博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot—04文件上传
阅读量:5368 次
发布时间:2019-06-15

本文共 3072 字,大约阅读时间需要 10 分钟。

package com.smartmap.sample.ch1.controller.view;import java.io.File;import java.io.IOException;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.core.env.Environment;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.MultipartFile;import com.smartmap.sample.ch1.service.UserService;@Controller@RequestMapping("/system/page/user")public class UserViewController {    @Autowired    UserService userService;    @Autowired    private Environment environment;    @GetMapping("/list.html")    public String userList(Model model) {        String osName = System.getProperty("os.name");        model.addAttribute("name", "hello world");        model.addAttribute("host", osName);        return "user/list";    }    @GetMapping("/userdetail.html")    public String userdetail(String id) {        return "admin/userInfo.jsp";    }    /**     * 文件上传     *      * curl -XPOST 'http://127.0.0.1:8080/system/page/user/upload.html' -F     * "multipartFile=@/D/Project/JavaWeb/SpringBoot/01HelloSpringBoot/readme.txt"     * -F "name=123456789"     *      * curl -XPOST 'http://127.0.0.1:8080/system/page/user/upload.html' -F     * "multipartFile=@readme.txt;type=application/octet-stream" -F "name=123456789"     *      * @param name     * @param multipartFile     * @return     * @throws IllegalStateException     * @throws IOException     */    @PostMapping("/upload.html")    @ResponseBody    public String handleFormUpload(String name, MultipartFile multipartFile) throws IllegalStateException, IOException {        String resultMessage = "{success: false, message: 'upload fail'}";        System.out.println(multipartFile);        if (!multipartFile.isEmpty()) {            String fileName = multipartFile.getOriginalFilename();            // InputStream is = multipartFile.getInputStream();            String fileSavePath = environment.getProperty("file.upload.path", "");            if (!fileSavePath.equals("")) {                File file = new File(fileSavePath + java.io.File.separator + fileName);                if (file.exists()) {                    file.delete();                }                multipartFile.transferTo(file);                resultMessage = "{success: true, message: 'upload success'}";            }        }        return resultMessage;    }}

application.properties

file.upload.path=D:/Project/JavaWeb/SpringBoot/01HelloSpringBoot/fileUpLoadspring.servlet.multipart.enabled=truespring.servlet.multipart.file-size-threshold=0spring.servlet.multipart.location=D:/Project/JavaWeb/SpringBoot/01HelloSpringBoot/tempspring.servlet.multipart.max-file-size=10MBspring.servlet.multipart.max-request-size=10MBspring.servlet.multipart.resolve-lazily=false

转载于:https://www.cnblogs.com/gispathfinder/p/8920933.html

你可能感兴趣的文章
[搬运] 写给 C# 开发人员的函数式编程
查看>>
core--线程池
查看>>
他山之石:加载图片的一个小问题
查看>>
shell - 常识
查看>>
Spring Cloud Stream消费失败后的处理策略(三):使用DLQ队列(RabbitMQ)
查看>>
PKUWC2018 5/6
查看>>
As-If-Serial 理解
查看>>
洛谷P1005 矩阵取数游戏
查看>>
在Silverlight中使用HierarchicalDataTemplate为TreeView实现递归树状结构
查看>>
无线通信基础(一):无线网络演进
查看>>
关于python中带下划线的变量和函数 的意义
查看>>
linux清空日志文件内容 (转)
查看>>
Ajax : load()
查看>>
MySQL-EXPLAIN执行计划Extra解释
查看>>
图片点击轮播(三)-----2017-04-05
查看>>
直播技术细节3
查看>>
java中new一个对象和对象=null有什么区别
查看>>
字母和数字键的键码值(keyCode)
查看>>
01_1_准备ibatis环境
查看>>
JavaScript中的BOM和DOM
查看>>