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")的使用(上传文件),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
