文件上传是否要ìO导包入.docVIP

  • 2
  • 0
  • 约8.24千字
  • 约 5页
  • 2017-02-09 发布于北京
  • 举报
文件上传是否要ìO导包入

昨天做了一个Servlet实现文件上传的功能,之前没仔细研究过commons-fileupload-1.2.1.jar,就随意网上搜了下例 子,草率写完了,测试成功,感觉不错没出什么问题,回来无意之间又看到一篇文章说,用commons-fileupload-1.2.1.jar实现上传 文件一定要加上commons-io-1.3.2.jar,我就开始纳闷了,我明明没有加这个io包测试成功,他居然说必须加,感觉肯定是有问题的,经过今天一上午研究最后终于找出原因为什么有人说加有人说不加啦,预知详情,请不要走开] ? 1,先把我的servlet简单的写出来,还有个jsp,没什么内容就几个input type=file ,就不列出来了,不要忘了form里加上enctype=multipart/form-data,没这个貌似不可以的。 public?void?doGet(HttpServletRequest?request,?HttpServletResponse?response)?? ????????throws?ServletException,?IOException?{?? ????response.setCharacterEncoding(UTF-8);?? ????FileBiz?biz?=?new?FileBiz();?? ????String?uploadPath?=?getServletContext().getRealPath(/);//获取文件路径?? ????biz.upload(request,uploadPath);?? ????response.getWriter().println(上传成功);?? }?? ?? public?void?doPost(HttpServletRequest?request,?HttpServletResponse?response)?? ????????throws?ServletException,?IOException?{?? ????this.doGet(request,?response);?? }?? ?2,列下我第一次没有加commons-io-1.3.2.jar情况下测试成功的代码。 public?class?FileBiz?{?? ?????? ????public?void?upload(HttpServletRequest?request,String?uploadPath)?{?? ????????SimpleDateFormat?sdf?=?new?SimpleDateFormat(yyyyMMddhhmmss);?? ????????File?tmpDir?=?new?File(d:\\temp);?//初始化上传文件的临时存放目录,必须是绝对路径?? ????????try?{?? ????????????if?(ServletFileUpload.isMultipartContent(request))?{?? ????????????????DiskFileItemFactory?factory?=?new?DiskFileItemFactory();?? ????????????????//指定在内存中缓存数据大小,单位为byte,这里设为1Mb?? ????????????????factory.setSizeThreshold(1?*?1024?*?1024);??? ????????????????//设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录?? ????????????????factory.setRepository(tmpDir);??? ????????????????ServletFileUpload?sfu?=?new?ServletFileUpload(factory);?? ?????????????????//?指定单个上传文件的最大尺寸,单位:字节,这里设为5Mb?? ????????????????sfu.setFileSizeMax(5?*?1024?*?1024);?? ????????????????//指定一次上传多个文件的总尺寸,单位:字节,这里设为10Mb?? ????????????????sfu.setSizeMax(10?*?1024?*?1024);??? ????????????????sfu.setHeaderEncoding(UTF-8);?//设置编码,因为我的jsp页面的编码是utf-8的?? ????????????????FileItemIterator?fii?=?sfu.getItemIterator(request);//?解析r

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档