首页 > 代码库 > 文件上传与下载
文件上传与下载
文件上传概述
- 实现web开发中的文件上传功能,需完成如下二步操作:
1. 在web页面中添加上传输入项
2. 在servlet中读取上传文件的数据,并保存到服务器硬盘中。
- 如何在web页面中添加上传输入项?
<input type=“file”>标签用于在web页面中添加文件上传输入项,设置文件上传输入项时须注意:
1. 必须要设置input输入项的name属性,否则浏览器将不会发送上传文件的数据。
2. 必须把form的enctype属值设为multipart/form-data.设置该值后,浏览器在上传文件时,将把文件数据附带在http请求消息体中,并使用MIME协议对上传的文件进行描述,以方便接收方对上传数据进行解析和处理。
3. 表单的提交方式要是post
- 如何在Servlet中读取文件上传数据,并保存到本地硬盘中?
1. Request对象提供了一个getInputStream方法,通过这个方法可以读取到客户端提交过来的数据。但由于用户可能会同时上传多个文件,在servlet端编程直接读取上传数据,并分别解析出相应的文件数据是一项非常麻烦的工作,示例。
2. 为方便用户处理文件上传数据,Apache 开源组织提供了一个用来处理表单文件上传的一个开源组件( Commons-fileupload ),该组件性能优异,并且其API使用极其简单,可以让开发人员轻松实现web文件上传功能,因此在web开发中实现文件上传功能,通常使用Commons-fileupload组件实现。
- 使用Commons-fileupload组件实现文件上传,需要导入该组件相应的支撑jar包:Commons-fileupload和commons-io。commons-io 不属于文件上传组件的开发jar文件,但Commons-fileupload 组件从1.1 版本开始,它工作时需要commons-io包的支持。
文件上传与下载