Java与WebUploader相结合实现文件上传功能(实例代码)
之前自己写小项目的时候也碰到过文件上传的问题,没有找到很好的解决方案。虽然之前网找各种解决方案的时候也看到过WebUploader,但没有进一步深究。这次稍微深入了解了些,这里也做个小结。
简单的文件和普通数据上传并保存
jsp页面:
<%@pagelanguage="java"contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>Inserttitlehere 文件:
信息:
servlet:
packagecom.yihengliu.web.action; importjava.io.File; importjava.io.IOException; importjava.io.InputStream; importjava.util.List; importjavax.servlet.ServletException; importjavax.servlet.http.HttpServlet; importjavax.servlet.http.HttpServletRequest; importjavax.servlet.http.HttpServletResponse; importorg.apache.commons.fileupload.FileItem; importorg.apache.commons.fileupload.disk.DiskFileItemFactory; importorg.apache.commons.fileupload.servlet.ServletFileUpload; importorg.apache.commons.io.FileUtils; /** *Servletusertoacceptfileupload */ publicclassFileUploadServletextendsHttpServlet{ privatestaticfinallongserialVersionUID=1L; privateStringserverPath="e:/"; protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.getWriter().append("Servedat:").append(request.getContextPath()); System.out.println("进入后台..."); //1.创建DiskFileItemFactory对象,配置缓存用 DiskFileItemFactorydiskFileItemFactory=newDiskFileItemFactory(); //2.创建ServletFileUpload对象 ServletFileUploadservletFileUpload=newServletFileUpload(diskFileItemFactory); //3.设置文件名称编码 servletFileUpload.setHeaderEncoding("utf-8"); //4.开始解析文件 try{ Listitems=servletFileUpload.parseRequest(request); for(FileItemfileItem:items){ if(fileItem.isFormField()){//>>普通数据 Stringinfo=fileItem.getString("utf-8"); System.out.println("info:"+info); }else{//>>文件 //1.获取文件名称 Stringname=fileItem.getName(); //2.获取文件的实际内容 InputStreamis=fileItem.getInputStream(); //3.保存文件 FileUtils.copyInputStreamToFile(is,newFile(serverPath+"/"+name)); } } }catch(Exceptione){ e.printStackTrace(); } } protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ doGet(request,response); } }
使用WebUploader组件上传
分片、并发,预览、压缩,多途径添加文件夹(文件多选,拖拽等),妙传
页面样式使用
使用webuploader上传 文件上传