`

文件上传显示保存到数据库实现类

 
阅读更多
public class UpLoadAction extends ActionSupport implements
				ServletRequestAware,ServletResponseAware {
	private HttpServletRequest request;
	private HttpServletResponse response;	
	private List<File> uploadFile;
	private List<String> uploadFileContentType;
	private List<String> uploadFileFileName;
	
	
	public void setServletRequest(HttpServletRequest request) {
		this.request = request;
	}

	public void setServletResponse(HttpServletResponse response) {
		this.response = response;
	}
	
	
	/**
	 * 上传图片,至路径保存至数据库
	 * @return
	 * @throws Exception
	 */
	public String uploadImage() throws Exception {
		String savePath = request.getSession().getServletContext().getRealPath("/upload/temp");
		String result = "error";
		
		File dir = new File(savePath);
		if (!dir.exists()) {
			dir.mkdirs();
		}
		List<File> files = getUploadFile();
		if((files!=null) && (files.size()>0)){
			for (int i = 0; i < files.size(); i++) {
				FileUtils.copyFile(files.get(i), new File(savePath + "//"
						+ getUploadFileFileName().get(i)));
			}
		}
		else{
			return result;
		}
		
		return SUCCESS;
	}
	
	
	/**
	 * 显示图片
	 * @return
	 */
	public String getHotelImage(){
		
		 try {
			 String name = request.getParameter("name");

			 name = request.getSession().getServletContext().getRealPath("/") +"upload/hotel/" + name;
			 FileInputStream fi = new FileInputStream(name);
			 BufferedInputStream bi = new BufferedInputStream(fi);
		     int c =0;
			 while((c=bi.read())!=-1){
				response.getWriter().write(c);
			 }
			 response.getWriter().flush();
			 fi.close();
		} 
		catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return "success";
	}
	
	/**
	 * 持久化到数据库
	 * @return
	 */
	public String insertiImageInfo() {
		
		try{
			hotelimage = new HotelImage();
			hotelimage.setImageTitle(imageTitle);
			 String image = request.getParameter("uploadFileName");
			 hotelimage.setImageName(request.getParameter("oldUploadFileName"));
			 String savePath = request.getSession().getServletContext().getRealPath("/upload");
			 try {
				    hotelimage.setImagePath(URLEncoder.encode( image,"utf-8"));
					FileUtils.copyFile(new File(savePath+"/temp/" + hotelimage.getImagePath()), new File(savePath+"/hotel/" + hotelimage.getImagePath()));
				} catch (Exception e) {
					e.printStackTrace();
			    }
			HttpSession session = request.getSession();
			//验证用户是否已登录
			if(session.getAttribute("AdminSession")!=null){
				UserInfo userInfo = (UserInfo) session.getAttribute("AdminSession");
				if(userInfo!=null){
					hotelimage.setUploadUserId(Integer.parseInt(userInfo.getId()));
				}
			}
			else{
				hotelimage.setUploadUserId(0);
			}
			
			hotelimage.setHotelId(hotelId);
			hotelimage.setImageType(imageType);
			hotelimage.setImageDesc(content);
			int t = hotelImageService.addHotelImageService(hotelimage);
			if(t<=0){
				return "error";
			}
			hotelId="0";
			imageType="0";
			imageTitle="";
		}
		catch(Exception ex){
			ex.printStackTrace();
			return "error";
		}
		
		
		return "success";
	}
	
	
	

	
	public String goEditImage(){
		String id = request.getParameter("id");
		HotelImage image = hotelImageService.getImageByID(Long.valueOf(id));
		List<HotelInfo>  hotels = hotelImageService.queryHotelListService(hotelInfo);
		request.setAttribute("hotels", hotels);
		request.setAttribute("image", image);
		if("audit".equals(request.getParameter("type"))){
			return "audit";
		}
		return "success";
	}
	
	public String editImage() {
		try{
			hotelimage = new HotelImage();
			hotelimage.setImageTitle(imageTitle);
			String image = request.getParameter("uploadFileName");
			hotelimage.setImageName(request.getParameter("oldUploadFileName"));
			String savePath = request.getSession().getServletContext().getRealPath("/upload");
			try {
				    hotelimage.setImagePath(URLEncoder.encode( image,"utf-8"));
				    if(!"0".equals(request.getParameter("upload"))){
						FileUtils.copyFile(new File(savePath+"/temp/" + hotelimage.getImagePath()), new File(savePath+"/hotel/" + hotelimage.getImagePath()));
				    }
			} catch (Exception e) {
					e.printStackTrace();
			}
			HttpSession session = request.getSession();
			//验证用户是否已登录
			if(session.getAttribute("AdminSession")!=null){
				UserInfo userInfo = (UserInfo) session.getAttribute("AdminSession");
				if(userInfo!=null){
					hotelimage.setUploadUserId(Integer.parseInt(userInfo.getId()));
				}
			}
			else{
				hotelimage.setUploadUserId(0);
			}
			
			hotelimage.setHotelId(hotelId);
			hotelimage.setImageType(imageType);
			hotelimage.setImageDesc(content);
			hotelimage.setImageId(imageId);
			int t = hotelImageService.updateImage(hotelimage);
			if(t<=0){
				return "error";
			}
			hotelId="0";
			imageType="0";
			imageTitle="";
		}
		catch(Exception ex){
			ex.printStackTrace();
			return "error";
		}
		
		return ActionSupport.SUCCESS;
	}
	
	
	public String auditImage() {
		HttpServletRequest request = ServletActionContext.getRequest();
		HttpSession session = request.getSession();
		UserInfo userInfo = (UserInfo) session.getAttribute("AdminSession");
	    HotelImage image =new HotelImage();
	    image.setImageId(imageId);
	    image.setAudit_flag(request.getParameter("audit_flag"));
	    image.setAudit_fault_reson(request.getParameter("audit_fault_reason"));
	    image.setAudit_user(Integer.valueOf(userInfo.getId()));
	    hotelImageService.auditImage(image);
		return ActionSupport.SUCCESS;
		
	}
	
	public String deleteImage(){
		HttpServletRequest request = ServletActionContext.getRequest();
		String [] ids = request.getParameterValues("checkedIds");
		String newsIds = StringUtils.join(ids, ",");
		hotelImageService.deleteImageByIds(newsIds);
		return "success";
	}
	
	public String getGallerialImage(){
		HotelImage image = new HotelImage();
		image.setStartRow(1);
		image.setPageSize(20);
		String path = request.getContextPath() +"/upload/hotel/";
		List<HotelImage> list = hotelImageService.getImageList(image);
		List<GalleriaImage> galleriaImages  = new ArrayList<GalleriaImage>();
		GalleriaImage galleriaImage = null;
		for(int i=0;i<list.size();i++){
			galleriaImage = new GalleriaImage();
			image = list.get(i);
			galleriaImage.setDescription(image.getImageDesc());
			galleriaImage.setImage(path+image.getImagePath());
			galleriaImage.setTitle(image.getImageTitle());
			galleriaImages.add(galleriaImage);
		}
		
		JSONArray jo = JSONArray.fromObject(galleriaImages);
	   	json = jo.toString();
		return "success";
	}
}

//getter  setter略

 

分享到:
评论

相关推荐

    将文件上传、下载(以二进制流保存到数据库)实现代码

    在讨论如何将文件上传、下载并以二进制流的方式保存到数据库中时,首先需要了解几个关键概念:文件上传、文件下载、二进制流以及数据库操作。 文件上传通常指的是将本地或者网络上的文件通过网络上传到服务器。在...

    任意文件保存到数据库

    在C#中,我们可以通过SqlConnection类连接到Access数据库,使用SqlCommand类执行SQL命令,比如INSERT语句来将文件数据保存到BLOB(Binary Large Object)字段。 文件的读取和写入通常使用System.IO命名空间中的类。...

    SSH文件上传保存到MySql数据库

    在这个特定的项目中,“SSH文件上传保存到Mysql数据库”指的是使用Struts2作为前端控制器,Spring作为依赖注入容器,以及Hibernate作为对象关系映射工具,实现文件上传功能并将数据存储到MySQL数据库的过程。...

    使用Springboot上传图片并将URL保存到数据库中

    本示例将详细讲解如何实现一个简单的文件上传功能,将图片上传至服务器,并将图片的URL保存到数据库中。 首先,我们需要在Spring Boot项目中引入所需的依赖。对于文件上传,Spring Boot本身提供了`spring-boot-...

    SSM(Spring+SpringMvc+Mybatis)图片上传保存到数据库与回显+sql

    3. **文件保存**:文件上传后,需要在服务器的某个目录下保存。可以使用Java的File类或Apache的Commons IO库来处理文件的读写操作。同时,应确保文件名的唯一性和安全性,避免覆盖已有文件。 4. **数据库操作**:在...

    SpringMvc上传本地图片保存数据库并实时显示

    这个过程涉及多个步骤,包括前端表单设计、后端控制器处理、文件上传逻辑、数据库操作以及视图展示。下面我们将详细讲解这个过程中的关键知识点。 1. **前端表单设计**: 前端通常使用HTML5的`&lt;form&gt;`元素来创建...

    C# 文件保存到数据库中或者从数据库中读取文件

    在软件开发领域,特别是Web应用开发中,处理文件上传和下载是常见的需求之一。对于某些场景,如用户头像、文档、图片等小型文件,将其直接存储在数据库中可以简化文件管理流程,避免文件系统的复杂性。C#作为一种...

    C#将文件(图片)路径保存到sqlserve数据库中

    本篇将深入探讨如何使用C#将文件(图片)路径保存到SQL Server数据库中,以及如何从数据库中读取路径并找到对应的文件。 首先,让我们理解标题和描述中的关键知识点: 1. **C#**:C#是一种面向对象的编程语言,由...

    springmvc上传下载并且保存到数据库

    - **持久化操作**:在文件上传成功后,将文件信息保存到数据库,以便后续的查询和下载操作。 4. **安全性考虑** - **权限控制**:限制非授权用户对文件的操作,例如仅允许文件所有者下载。 - **防止 DoS 攻击**...

    asp.net(C#)文件保存到数据库,上传下载

    在ASP.NET(C#)开发中,将文件保存到数据库并实现上传下载是常见的功能需求。这个场景通常涉及用户交互,比如用户通过网页上传文件,然后服务器将这些文件存储在数据库中,以便后续的下载或其他操作。以下是关于这...

    servelet可以将文件保存到数据库

    在本项目中,Servlet被用来实现一个功能,...总之,这个项目展示了如何使用Servlet处理文件上传,并将文件内容保存到MySQL数据库。通过这种方式,可以实现文件的存储和检索,这对于企业级应用的数据管理具有重要意义。

    图片保存在数据库

    这个知识点讲解了如何将图片压缩后保存在数据库中,并详细解释了图片压缩、图片存储在数据库、使用 Java 保存图片到数据库、数据库表字段、Java 图片处理、数据库字段存储图片和小图片存储在数据库的过程。

    文件上传到服务器和数据库

    在保存文件信息时,应先将文件上传到服务器,获得文件在服务器的路径,然后将这个路径和其他元数据一起插入到数据库中。 最后,安全方面是不可忽视的。文件上传可能导致一些安全问题,比如恶意文件上传、跨站脚本...

    asp.net文件上传并保存数据库

    在ASP.NET中,文件上传是一...综上所述,ASP.NET提供了强大的文件上传和管理功能,结合数据库存储,可以实现安全、高效且灵活的文件管理系统。通过理解上述概念和技术,开发者可以创建满足不同需求的文件上传解决方案。

    asp上传文件到本地并保存信息到数据库

    标题“asp上传文件到本地并保存信息到数据库”涉及的技术点主要包括两个部分:文件上传到服务器的本地存储以及将文件相关信息存储到数据库中。下面将详细阐述这两个知识点。 1. ASP文件上传: ASP文件上传主要通过...

    springboot文件上传路径保存数据库并且可以复制路径网页访问图片

    以上就是关于"springboot文件上传路径保存数据库并且可以复制路径网页访问图片"这一主题的主要知识点。通过这些步骤,你可以构建一个完整的文件上传系统,使得用户上传的图片能够在网页上正常访问。在实际开发中,还...

    JSP实现将图片上传到数据库

    【JSP实现将图片上传到数据库】的知识点涵盖了图片上传的基本原理、文件上传组件的使用、JSP中处理图片数据的流程以及服务器端文件的存储形式。以下是详细说明: 1. **图片上传原理**: 图片上传是客户端通过Web...

    QT实现图片插入数据库并显示

    在使用Qt进行应用程序开发时,...以上就是使用Qt实现图片插入数据库并显示所需的关键知识点。理解并掌握这些概念,将有助于构建一个功能完善的图像管理系统。在实际编程时,还需要根据具体需求进行适当的调整和优化。

    java实现读取word文件并且上传到数据库

    本项目关注的是如何使用Java来实现读取Microsoft Word文件,并将其中的数据上传到数据库,以此提升数据录入的效率。这一过程涉及到多个技术点,包括文件I/O、Word文档解析、数据库操作以及可能的数据转换。 首先,...

    如何将图片或其它文件保存到数据库中(C#)

    本篇文章将深入探讨如何使用C#将图片或其他文件保存到数据库中,这对于需要存储用户上传内容或进行数据备份的应用场景至关重要。 首先,我们需要了解数据库中的两种常见方式来存储非结构化数据如图片或文件:BLOB...

Global site tag (gtag.js) - Google Analytics