zoukankan      html  css  js  c++  java
  • springmvc 文件上传

    单个 文件上传 

    给你jsp页面 

    <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    <h1>文件上传</h1>
    <form action="/first" method="post" enctype="multipart/form-data">
        文件1   <input type="file" name="upload"/>
        <input type="submit"/>
    </form>
    </body>
    </html>

    注意 是 post  以及enctype的写法 

    xml有一个  bean 

      <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
            <property name="maxUploadSize" value="20971520"></property>
            <property name="defaultEncoding" value="UTF-8"></property>
        </bean>

        id不能乱起,这是规定的,  class :  CommonsMultipartResolver

        max 文件上传的最大容量  单位为字节 byte  1024byte=1kb  

       defaultEncoding 为解决文件上传的文件名的乱码 

       

        @RequestMapping("/first")
        public String first(MultipartFile upload, HttpSession session){
            System.out.println("文件上传");
            String originalFilename = upload.getOriginalFilename();
            String realPath = session.getServletContext().getRealPath("/upload");
            File file=new File(realPath,originalFilename);
            try {
                upload.transferTo(file);
                return "ax";
            } catch (IOException e) {
                e.printStackTrace();
            }
    
    
            return  "fil";
    
        }

       控制器       upload.getSize()>0 这个可以检查是否文件上传,

       单个,你的项目下,要有一个 upload文件夹    

    originalFilename.endwiith("jsp")  判断文件上传的类型   

      现在给你们多文件上传 

    <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    <h1>文件上传</h1>
    <form action="/first" method="post" enctype="multipart/form-data">
        文件1   <input type="file" name="upload"/>
        文件2   <input type="file" name="upload"/>
        文件3   <input type="file" name="upload"/>
        <input type="submit"/>
    </form>
    </body>
    </html>
      @RequestMapping("/first")
        public String first(@RequestParam  MultipartFile[] upload, HttpSession session){
            System.out.println("文件上传");
            for (MultipartFile uu:upload) {
                String originalFilename = uu.getOriginalFilename();
                String realPath = session.getServletContext().getRealPath("/upload");
                File file = new File(realPath, originalFilename);
                try {
                    uu.transferTo(file);
                 
                } catch (IOException e) {
                    e.printStackTrace();
                }
    
            }
            
            return  "fil";
    
        }

    必须进行 @RequestParam    

  • 相关阅读:
    IIS应用程序池自动化回收脚本
    gitlab修改克隆地址
    docker安装的gitalb备份及数据迁移
    docker安装gitlab
    docker安装的gitlab备份脚本
    sql server 2016 维护计划执行,提示执行失败。有关详细信息,请参阅维护计划和sql server 代理作业历史记录日志。
    SSH使用证书登录
    docker搭建 rabbitmq集群
    VMware Workstation Pro设置nat模式上网
    docker-compose搭建discuz论坛
  • 原文地址:https://www.cnblogs.com/LWLDD/p/8693889.html
Copyright © 2011-2022 走看看