邹瑞20201111
总结
@MultipartConfig注解
jsp表单设置ectype属性为multipart/form-data才可上传文件
在Java文件中
方式一:使用@MultipartConfig注解
(1).处理文件上传的Servlet使用@MultipartConfig注解修饰;该Servlet主要完成访问上传页面以及处理文件上传,通过HttpServletRequest提供的getPart(String name)或getParts()方法获取到上传的文件,再使用Part相关的API获取文件信息以及完成上传。
(2).通过该注解提供的属性:maxFileSize、maxRequestSize等可以对上传文件大小、请求大小进行控制
方式二:web.xml方式配置
使用web.xml方式配置时,需要在
测试说明
(1).使用getPart(String name)方法
在使用request.getPart("upload")时,只会获取表单中所有标签name属性为"upload"中第一个出现的标签,可能是文件、普通元素,所以最好要先判断是否是文件。
(2).使用getParts()方法
使用该方法时,获取表单中所有标签,遍历返回的Collection
常用的与文件上传相关的API
1.HttpServletRequest提供的方法
- Part getPart(String name):根据名称获取文件上传域
- Collection
getParts():获取所有的文件上传域
2.Part中常用的方法
- String getContentType():获取上传文件的文件类型
- long getSize():上传文件的大小
- String getSubmittedFileName():上传文件的原始文件名
- String getName():获取标签中name属性值
- String getHeader(String name):获取请求头部
- Collection
getHeaderNames():获取所有请求头部名称 - InputStream getInputStream():获取上传文件的输入流
- void write(String path):保存文件至服务器
点赞
评论留言