• servlet3.0 文件上传功能


    注意 jsp页面中file选择 的要有属性 name='file'
    package com.webserver.webservice;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.List;
    
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.MultipartConfig;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.Part;
    
    import org.apache.catalina.core.ApplicationPart;
    
    /**
     * Servlet implementation class UpLoadServlet
     * author:chuanyuBai 2014/07/21
     */
    @MultipartConfig(location = "D:/upload", fileSizeThreshold = 1024)
    public class PCMUploadServlet extends HttpServlet {
        private static final long serialVersionUID = 1L;
        
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public PCMUploadServlet() {
            super();
        }
    
        @Override
        public void init(ServletConfig config) throws ServletException {
            super.init(config);
        }
        /**
         * @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 {
        
            request.setCharacterEncoding("utf-8");
            try{
                //获取多文件
                List<Part> partlist =  (List<Part>) request.getParts();
                //获取单文件文件部件part
                Part part = request.getPart("file");
                //获取文件名称的两种方式
                //方式一
                String filename1 = ((ApplicationPart)part).getFilename();
                //方式二
                //获取文件服务器头部信息
                String h = part.getHeader("content-disposition");
                String filename = h.substring(h.lastIndexOf("=") + 2, h.length() - 1);
                String root = request.getServletContext().getRealPath("/upload");
                File f=new File(root);  
                f.mkdir();  
                //删除生成的中间文件
                part.delete();
                part.write(root+"/"+filename);
            }catch(Exception e){
                System.out.println(e.getMessage());
            }
        
        }
        
    
    }
  • 相关阅读:
    使用Mxnet基于skip-gram模型实现word2vect
    【快学springboot】SpringBoot整合Mybatis Plus
    面试官:说说Spring中的事务传播行为
    「快学SpringBoot」配置文件的加载顺序和配置项默认值设置
    「快学springboot」SpringBoot整合freeMark模板引擎
    「快学springboot」SpringBoot多环境配置文件
    为什么阿里规约手册要求谨慎使用Arrays.asList方法
    「快学Docker」Docker简介、安装和Hello World实现
    Java中的transient关键字
    IDEA设置窗口标签换行显示
  • 原文地址:https://www.cnblogs.com/Wen-yu-jing/p/3858425.html
Copyright © 2020-2023  润新知