zoukankan      html  css  js  c++  java
  • springmvc 文件上传和拦截器

    文件上传:

    单文件:

    @Controller
    public class FirstController {
      @RequestMapping("/first")
        public String doFrist(MultipartFile upload, HttpSession session){
    
        //文件不能为空
        if (upload.getSize()>0){
          String childpath=upload.getOriginalFilename();
          //限定类型
        /*  if (childpath.endsWith("jsp")){
    
          }*/
          String fatherpath=session.getServletContext().getRealPath("/upload");
          System.out.print(fatherpath);
    
          //拼接路径
          File file=new File(fatherpath,childpath);
          try {
            //上传
            upload.transferTo(file);
          } catch (IOException e) {
            e.printStackTrace();
          }
    
        }else{
          System.out.print("文件为空");
        }
        return "/index.jsp";
      }
    }
    

      配置文件:

    <context:component-scan base-package="day013shangchuan"></context:component-scan>
     <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
      <property name="maxUploadSize" value="50000000"></property> //上传文件的总大小
      <property name="maxUploadSizePerFile" value="50000"></property>//单个文件的大小
      <property name="defaultEncoding" value="utf-8"></property> //编码的字符集
     </bean>
     <mvc:annotation-driven></mvc:annotation-driven>
    

      jsp页面::

    <form action="/first" method="post" enctype="multipart/form-data">
        文件:<input type="file" name="upload">
        <input type="submit">
    </form>
    

      多文件上传:

    @Controller
    public class FirstControllers {
      @RequestMapping("/firsts")
        public String doFrist(@RequestParam MultipartFile [] upload, HttpSession session){
    
        for (MultipartFile item:upload){
          //文件不能为空
          if (item.getSize()>0){
            String childpath=item.getOriginalFilename();
            //限定类型
        /*  if (childpath.endsWith("jsp")){
    
          }*/
            String fatherpath=session.getServletContext().getRealPath("/upload");
            System.out.print(fatherpath);
    
            //拼接路径
            File file=new File(fatherpath,childpath);
            try {
              //上传
              item.transferTo(file);
            } catch (IOException e) {
              e.printStackTrace();
            }
    
          }else{
            System.out.print("文件为空");
          }
        }
    
    
        return "/index.jsp";
      }
    }
    

     配置和上面的一样

      jsp页面:

    <form action="/first" method="post" enctype="multipart/form-data">
        文件:<input type="file" name="upload">
        文件1:<input type="file" name="upload">
        文件2:<input type="file" name="upload">
        <input type="submit">
    </form>
    

       

       拦截器:

          

    public class FirstInter implements HandlerInterceptor {
    
        public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
            System.out.println("111");
            return true;
        }
    
        public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
            System.out.println("333");
        }
    
        public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
            System.out.println("444");
        }
    
    }
    

      

    配置文件:

      

    <context:component-scan base-package="day013shangchuan"></context:component-scan>
     <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
      <property name="maxUploadSize" value="50000000"></property>
      <property name="maxUploadSizePerFile" value="50000"></property>
      <property name="defaultEncoding" value="utf-8"></property>
     </bean>
     <mvc:interceptors>
      <mvc:interceptor>
       <mvc:mapping path="/**"/>
       <bean class="day014lanjie.FirstInter"></bean>
      </mvc:interceptor>
     </mvc:interceptors>
    
     <mvc:annotation-driven></mvc:annotation-driven>
    

      

            

  • 相关阅读:
    cogs 1682. [HAOI2014]贴海报 WW
    cogs 2039. 树的统计
    cogs luogu [NOIP2011] 选择客栈
    cogs luogu 1804. [NOIP2014]联合权值 WD
    cogs luogu [NOIP2014]生活大爆炸版石头剪刀布
    leetcode[119]Pascal's Triangle II
    leetcode[120]Triangle
    leetcode[121]Best Time to Buy and Sell Stock
    leetcode[122]Best Time to Buy and Sell Stock II
    leetcode[123]Best Time to Buy and Sell Stock III
  • 原文地址:https://www.cnblogs.com/xu06123/p/8694317.html
Copyright © 2011-2022 走看看