文件上传

来源:互联网 发布:java 302错误 编辑:程序博客网 时间:2024/06/05 03:00

1.     文件上传理解

Ø  项目中经常使用文件上传这一功能,比如说要求用户注册时上传自己的照片,论坛发贴时可以上传附件,发送邮件时可以上传简历。。。。。都要用到文件上传这一功能

Ø  上传的文件可以是任何类型,图片,文本文件,html文件

Ø  文件上传是指将文件从客户端(用户机器上)上传到服务器端(如localhost)

​2.     文件上传步骤

说明:java里的文件上传已被apache国际开源组织封装好,其项目名为FileUpload。所以我们没有必要再“发明历史的轮子”,直接使用就可以达到上传文件的目的。

Ø 下载commons-fileupload-1.2.2.jar包,打开commons-fileupload帮助文档,在userguid下可以看到“FileUpload depends on Commons IO”,所以还要下载commons-io-2.3.jar

Ø 将以上两个jar包导入到工程当中

Ø 创建一个带有文件上传的JSP页面,即有类型的控件

确认表单提交方式为post,并添加enctype="multipart/form-data"

3.​Servlet中处理的具体步骤:

 

  • 具体步骤: 
  •  1)获得磁盘文件条目工厂 DiskFileItemFactory 要导包

 

  •  2) 利用 request 获取 真实路径 ,供临时文件存储,和 最终文件存储 ,这两个存储位置可不同,也可相同

 

  •  3)对 DiskFileItemFactory 对象设置一些 属性

 

  •  4)高水平的API文件上传处理  
  • ServletFileUpload upload = new ServletFileUpload(factory);

 

  •  目的是调用 parseRequest(request)方法  获得 FileItem 集合list ,  
  •  5)在 FileItem 对象中 获取信息,   遍历, 判断 表单提交过来的信息 是否是 普通文本信息  另做处理

 

  •  6)

 

  •  第一种. 用第三方 提供的  item.write( new File(path,filename) );  直接写到磁盘上

 

  •  第二种. 手动处理 

 

提供一个链接:http://blog.csdn.net/hzc543806053/article/details/7524491 

​ Servlet实现文件上传,可多文件上传,博主讲的很清楚,大家可以参考!

 

 

 

 

 

0 0
原创粉丝点击