分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

FileUpload上传总结

发布时间:2023-09-06 01:11责任编辑:傅花花关键词:暂无标签

1、 文件上传写Fileupload代码时导包的是commons,而不是apach包

2、 创建一个工厂DiskFileItemFactory factory=new DiskFileItemFactory();
将请求消息尸体中的每一个项目封装成单独的DiskFileitem对象

3、 创建解析文件上传的核心对象

ServletFileUpload upload=new ServletFileUpload(factory);

4、 解析有客户端通过request上传的请求:

List<FileItem>items=upload.parseRequest(request);

5、遍历这个集合,判断是普通的表单上传还是文件上传
   for (FileItem item : items) {

                   //item.isFormField(),是用来判断当前的FileItem是否是普通的表单

                   if (item.isFormField()) {

                      //普通表单

                      //获取文件名称

                      String name=item.getFieldName();

                      String value=item.getString();

                   }else {

                      //文件上传

                      String fileName=item.getName();

                      //使用UUID改写文件名,防止多少次上传会有重名的文件覆盖

                      fileName=UUIDUtils.getUUID()+fileName;

                      //获取文件上传数据,将数据保存到服务器硬盘

                      //获取当前项目真实路径

                      String realPath=getServletContext().getRealPath("/upload");

                      //目录打散

                      String dir = DirUtils.getDir(fileName);

                      //保证计算处理的文件路径真实存在,所以先手动创建多级目录

                      new File(realPath, dir);

                      //将数据写出

                      try {

                         //文件输出的位置

                         item.write(new File(realPath,fileName));

                      } catch (Exception e) {

                         // TODO Auto-generated catch block

                         e.printStackTrace();

                      }

                     

                   }

                }

FileUpload上传总结

原文地址:http://www.cnblogs.com/LeoZou622/p/7529178.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved