【Demo】Servlet3.0 上传文件

来源:互联网 发布:mac照片应用 删除 编辑:程序博客网 时间:2024/06/06 03:26

上传单个文件:

 

singleFileUpload.html

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>single file upload</title></head><body><form action="SingleFileUploadServlet" method="post" enctype="multipart/form-data">上传文件:<input type="file" name="file" /> <br/><input type="submit" name="upload" value="上传"/></form></body></html>



SingleFileUploadServlet.java

package com.ekunt;import java.io.IOException;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;/** * 上传存储单个文件 * @author E-Kunt * */@MultipartConfig(location="G:/java/J2EE/workspace/Demo5FileUpload/file")@WebServlet("/SingleFileUploadServlet")public class SingleFileUploadServlet extends HttpServlet {private static final long serialVersionUID = 1L;           public SingleFileUploadServlet() {        super();    }        //截取文件名    public String getFileNameFromPart(Part part) {    String header = part.getHeader("Content-Disposition");    String fileName = header.substring(header.indexOf("filename=\"")+10, header.lastIndexOf("\""));return fileName;    }protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.getWriter().write("error,it must be POST method!");}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {request.setCharacterEncoding("UTF-8");Part part = request.getPart("file");String fileName = getFileNameFromPart(part);part.write(fileName);response.getWriter().write("upload succeed!");}}



上传多个文件:

multiFileUpload.html

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>multi file upload</title></head><body><form action="MultiFileUploadServlet" method="post" enctype="multipart/form-data">上传文件1:<input type="file" name="file1" /> <br/>上传文件2:<input type="file" name="file2" /> <br/>上传文件3:<input type="file" name="file3" /> <br/>上传文件4:<input type="file" name="file4" /> <br/>上传文件5:<input type="file" name="file5" /> <br/><input type="submit" name="upload" value="上传"/></form></body></html>


MultiFileUploadServlet.java

package com.ekunt;import java.io.IOException;import java.util.ArrayList;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;/** * 上传存储多个文件 * @author E-Kunt * */@MultipartConfig(location="G:/java/J2EE/workspace/Demo5FileUpload/file")@WebServlet("/MultiFileUploadServlet")public class MultiFileUploadServlet extends HttpServlet {private static final long serialVersionUID = 1L;           public MultiFileUploadServlet() {        super();    }        //截取文件名    public String getFileNameFromPart(Part part) {    String header = part.getHeader("Content-Disposition");    String fileName = header.substring(header.indexOf("filename=\"")+10,header.lastIndexOf("\""));    return fileName;    }protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.getWriter().write("error,it must be POST method!");}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {request.setCharacterEncoding("UTF-8");ArrayList<Part> partList = (ArrayList<Part>) request.getParts();for(Part part : partList) {if(part.getName().startsWith("file")){String fileName = getFileNameFromPart(part);part.write(fileName);}}response.getWriter().write("upload succeed!");}}




0 0