Servlet-文件上传@MultipartConfig,Part
2015年9月18日
1 目标:后台获取客户端上传文件内容并保存。
2 原理:前端使用文件标签将内容以二进制的形式传给容器。后端使用servlet的@MultipartConfig 标记servlet解析文件读取part。
3 流程:前端使用文件标签,后端读取part。
4 方法:前端上传文件,后端直接读取part。
参考:http://blog.csdn.net/xiazdong/article/details/7208316
4.1 前端上传文件:<inputtype=“file”>标签。
设置请求方式:method=”post”
设置编码类型:enctype=”multipart/form-data”
指定servlet:action=” /testAMap/ts"。
示例:
<formmethod="post" enctype="multipart/form-data"action="/testAMap/ts">
<input type="file" name="file"/>
<button type="submit"> submit</button>
</form>
4.2 后端读取文件:使用@MultipartConfig标记Servlet,读取part内容。
创建处理文件Servlet:使用@MultipartConfig标记。
处理part内容:读取文件名getSubmittedFileName(),文件大小getSize(),保存write()。
Part part=request.getPart("file");
pw.println("name="+part.getHeader("content-dispostion"));
byte[] buff=new byte[(int) part.getSize()];
part.getInputStream().read(buff);
5 示例
5.1 保存上传的文件到服务器指定目录
//后台文件处理Servlet:UploadFile.java
package lee;
import java.io.IOException;
importjavax.servlet.ServletExcep