文件上传
package servlet; import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; public class MyFileUpload extends HttpServlet { public void destroy() { super.destroy(); // Just puts "destroy" string in log // Put your code here } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String path = request.getRealPath("/touxiang/"); // 保存文件的位置 DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setRepository(new File(path)); ServletFileUpload fu = new ServletFileUpload(factory); fu.setSizeMax(1024*1024); fu.setHeaderEncoding("UTF-8"); try { List<FileItem> fileitems = fu.parseRequest(request); // 封装一下请求对象 for (FileItem file : fileitems) { if (file.isFormField()) { // 是一个表单元素 System.out.println(file.getFieldName() + "---" + file.getString()); } else { // 这是个二进制文件 String fname=file.getName(); System.out.println("文件名:" + fname); file.write(new File(path,fname)); } } } catch (Exception e) { e.printStackTrace(); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // fix 修改过 doGet(request, response); } public void init() throws ServletException { // Put your code here } }