servlet3实现文件上传
jsp代码:
<form action="<%=basePath%>upload" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="提交"/> </form>
?servlet代码:
?
@WebServlet(urlPatterns={"/upload"})@MultipartConfig(location="D:\",fileSizeThreshold=1024) //fileSizeThreshold int 是 当数据量大于该值时,内容将被写入文件。 //location String 是 临时存放生成的文件地址。 //maxFileSize long 是 允许上传的文件最大值。默认值为 -1,表示没有限制。 //maxRequestSize long 是 针对该 multipart/form-data 请求的最大数量,默认值为 -1,表示没有限制。 public class FileuploadTest extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException { req.setCharacterEncoding("utf-8"); Part part=req.getPart("file"); String h=part.getHeader("content-disposition"); System.out.println(h); String filename=h.substring(h.lastIndexOf("\")+1, h.length()-1); System.out.println(filename); part.write("D:\"+filename); // req.getRequestDispatcher("/index.jsp").forward(req,resp); resp.sendRedirect(req.getContextPath()+"/index.jsp");}}?