1.html/jsp主页
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <%String path=request.getContextPath();request.setAttribute("path", path); %> </head> <body> <form action="${path}/MultiUp" method="post" enctype="multipart/form-data"><table><tr><td>上传文件</td><td> <input type="file" name="fileN1" /></td></tr><tr><td>上传文件</td><td> <input type="file" name="fileN2" /></td></tr><tr><td>上传文件</td><td> <input type="file" name="fileN3" /></td></tr><tr><td colspan="2"><input type="submit" /><input type="reset" /></td></tr></table></form> </body> </html>
2.过滤器解决编码问题
package com.ser;import java.io.IOException;import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class Filter01 implements Filter {@Overridepublic void destroy(){}@Overridepublic void doFilter(ServletRequest arg0, ServletResponse arg1,FilterChain arg2) throws IOException, ServletException{HttpServletRequest request= (HttpServletRequest)arg0;HttpServletResponse response=(HttpServletResponse)arg1;request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");response.setContentType("text/html charset=utf-8");//System.out.println(">>>>>>>>>>>>"); arg2.doFilter(request, response);}@Overridepublic void init(FilterConfig arg0) throws ServletException{}}
3.多文件上传服务器处理
package multiup;import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Collections;import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part;import org.apache.commons.collections.CollectionUtils;/*** Servlet implementation class MultiUp*/ @WebServlet("/MultiUp") @MultipartConfig(location="e://uploadFile",fileSizeThreshold=1024*1024*10,maxFileSize=1024*1024*200,maxRequestSize=1024*1024*300) public class MultiUp extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public MultiUp() {}@Overridepublic void init(ServletConfig config) throws ServletException{File file = new File("e://uploadFile");if(!file.exists()&&!file.isDirectory()){file.mkdir();}}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Collection<Part> parts= request.getParts();StringBuffer sb=new StringBuffer();if(!CollectionUtils.isEmpty(parts)){for(Part part:parts){String header=part.getHeader("content-disposition");String filename= header.substring(header.indexOf("filename")+10,header.lastIndexOf("\""));part.write(filename);sb=sb.append(filename).append(",");}}String str =sb.toString().substring(0,sb.toString().length()-1);response.getWriter().print(str+"上传成功!");}}