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 {
@Override
protected 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");
}
}