天天看点

SpringMVC 上传文件(超简单-5行代码)

项目中首先导入Apache common-io 的包,里面有很多方便的工具类,如IOUtils,FileUtils等

Jar下载:http://central.maven.org/maven2/commons-io/commons-io/2.6/commons-io-2.6.jar

Maven:

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.6</version>
</dependency>
           

后台代码:

@PostMapping("/uploadFile")
    @ResponseBody
    public String uploadFile(@RequestParam("file") MultipartFile file) throws Exception {
        //获取文件名
        String fileName = file.getOriginalFilename();
        //获取class编译文件的目录
        String path = Thread.currentThread().getContextClassLoader().getResource("").getPath();
        //存放目标文件位置
        File destination = new File(path + "upload/" + fileName);
        //创建文件
        FileUtils.touch(destination);
        //上传文件
        FileUtils.copyInputStreamToFile(file.getInputStream(), destination);
        return "success";
    }
           

前台代码:

<form action="/uploadFile" method="post">
        <input type="file" id="file" name="file"/>
        <input type="submit" value="submit"/>
    </form>
           

注意:上传文件有限制大小的哦,可以手动配置

@Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //设置最大上传限制100M
        factory.setMaxFileSize(1024L * 1024L * 100);
        return factory.createMultipartConfig();
    }
           

继续阅读