zoukankan      html  css  js  c++  java
  • 【JavaWeb】SpringMvc 文件上传

    1. 添加上传文件组件支持

        <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>

    2. Controller部分

    @RequestMapping("upload.do")
        public String upload(@RequestParam("file") MultipartFile file)
                throws IllegalStateException, IOException {
            String basePath = "xxx";
                String path = "";
                if (!file.isEmpty()) {
                    if (file.getOriginalFilename().endsWith("txt"))
                        path = basePath + "doc"; 
                    else if (file.getOriginalFilename().endsWith("jpg") || file.getOriginalFilename().endsWith("gif")
                            || file.getOriginalFilename().endsWith("png"))
                        path = basePath + "img";
                    else
                        path = basePath + "other";
                    String fileName = f.getOriginalFilename();
                    File tarFile = new File(path, fileName);
                    file.transferTo(tarFile);
                }
            return "index.jsp";
        }

    3. html部分

    <form action="upload.do" enctype="multipart/form-data" method="post">
            <input type="file" name="file">
            <input type="submit" value="上传">
        </form>

    4. 多文件上传

    @RequestMapping("upload.do")
        public String upload(@RequestParam("file") MultipartFile[] file, HttpServletRequest req)
                throws IllegalStateException, IOException {
            String basePath = "xxx";
            for (MultipartFile f : file) {
                String path = "";
                if (!f.isEmpty()) {
                    if (f.getOriginalFilename().endsWith("txt"))
                        path = basePath + "doc"; 
                    else if (f.getOriginalFilename().endsWith("jpg") || f.getOriginalFilename().endsWith("gif")
                            || f.getOriginalFilename().endsWith("png"))
                        path = basePath + "img";
                    else
                        path = basePath + "other";
                    String fileName = f.getOriginalFilename();
                    File tarFile = new File(path, fileName);
                    f.transferTo(tarFile);
                }
            }
            return "index.jsp";
  • 相关阅读:
    Vue日常报错
    VUE学习笔记二
    VUE学习笔记一
    Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured
    Apache Shiro安全(权限框架)学习笔记二
    Apache Shiro安全(权限框架)学习笔记一
    SSH框架整合
    Spring SpringMVC 和 Springboot 的关系(转载)
    SSM日常报错
    Mybatis笔记二
  • 原文地址:https://www.cnblogs.com/cnsec/p/13286760.html
Copyright © 2011-2022 走看看