本节书摘来异步社区《Java EE 7精粹》一书中的第2章,第2.10节,作者:【美】Arun Gupta,更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.10 Handling Multipart Requests
可以在Servlet中定义@MultipartConfig注解,表示它期待的请求类型是multipart/form-data。HttpServletRequest.getParts()方法和HttpServletRequest.getPart()方法提供multipart请求的各个部分:
在这段代码中:
@MultipartConfig注解定义在类上,表明doPost()方法将接收multipart/form-data类型的请求。location属性用于指定文件存储目录的位置。getParts方法提供multipart请求各个部分的集合。part.write方法用将上传的当前部分写到磁盘。Servlet 3.1增加了一个新方法Part.getSubmittedFileName()来获取客户端指定的文件名称。
如下Servlet可以从JSP页面调用:
在这段代码中,表单被以multipart/formdata编码类型提交到FileUploadServlet。