Form表单上传文件(type="file")的使用
一,单个文件的上传
1.html/jsp页面
<%@pagelanguage="java"contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>Inserttitlehere <% Stringpath=request.getContextPath(); request.setAttribute("path",path); %>
上传文件
2.过滤器解决中文乱码问题
packagecom.ser; importjava.io.IOException; importjavax.servlet.Filter; importjavax.servlet.FilterChain; importjavax.servlet.FilterConfig; importjavax.servlet.ServletException; importjavax.servlet.ServletRequest; importjavax.servlet.ServletResponse; importjavax.servlet.http.HttpServletRequest; importjavax.servlet.http.HttpServletResponse; publicclassFilter01implementsFilter { @Override publicvoiddestroy() { } @Override publicvoiddoFilter(ServletRequestarg0,ServletResponsearg1, FilterChainarg2)throwsIOException,ServletException { HttpServletRequestrequest=(HttpServletRequest)arg0; HttpServletResponseresponse=(HttpServletResponse)arg1; request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); response.setContentType("text/htmlcharset=utf-8"); arg2.doFilter(request,response); } @Override publicvoidinit(FilterConfigarg0)throwsServletException { } }
3.处理html/jsp
packagecom.ser; importjava.io.File; importjava.io.IOException; importjavax.servlet.ServletConfig; importjavax.servlet.ServletException; importjavax.servlet.annotation.MultipartConfig; importjavax.servlet.annotation.WebServlet; importjavax.servlet.http.HttpServlet; importjavax.servlet.http.HttpServletRequest; importjavax.servlet.http.HttpServletResponse; importjavax.servlet.http.Part; /** *ServletimplementationclassFileSer */ @WebServlet("/FileSer") @MultipartConfig(location="e://uploadFile", fileSizeThreshold=1024*1024*1000, maxFileSize=1024*1024*1000, maxRequestSize=1024*1024*1024 ) publicclassFileSerextendsHttpServlet{ privatestaticfinallongserialVersionUID=1L; privatestaticfinalStringlocation="e://uploadFile"; /** *@seeHttpServlet#HttpServlet() */ publicFileSer(){ } @Override publicvoidinit(ServletConfigconfig)throwsServletException { Filefile=newFile("e://uploadFile"); if(!file.exists()&&!file.isDirectory()) { file.mkdir(); } } /** *@seeHttpServlet#doGet(HttpServletRequestrequest,HttpServletResponseresponse) */ protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ } /** *@seeHttpServlet#doPost(HttpServletRequestrequest,HttpServletResponseresponse) */ protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ Partpart=request.getPart("fileN"); StringfileType=part.getContentType(); StringfileHeader=part.getHeader("content-disposition"); //StringfileName=part.getName(); longsize=part.getSize(); System.out.println(part); System.out.println(fileType); System.out.println(fileHeader); //System.out.println(fileName); System.out.println(size); Stringfilename=fileHeader.substring(fileHeader.indexOf("filename=")+10,fileHeader.lastIndexOf("\"")); part.write(filename); response.getWriter().print(filename+"上传成功"); } }
总结
以上所述是小编给大家介绍的Form表单上传域(type="file")的使用(上传文件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!