0
回答
Spring Boot基础教程12-web应用开发-文件上传
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

一、Spring Boot 默认使用springMVC包装好的解析器进行上传

 

二、添加代码

<form method="POST" enctype="multipart/form-data" action="/file/upload">

          文件:<input type="file" name="roncooFile" />

       <input type="submit" value="上传" />

     </form>

 

 

@Controller

@RequestMapping(value = "/file")

public class FileController {

 

private static final Logger logger = LoggerFactory.getLogger(FileController.class);

 

@RequestMapping(value = "upload")

@ResponseBody

public String upload(@RequestParam("roncooFile") MultipartFile file) {

     if (file.isEmpty()) {

         return "文件为空";

     }

 

     // 获取文件名

     String fileName = file.getOriginalFilename();

     logger.info("上传的文件名为:" + fileName);

 

     // 获取文件的后缀名

     String suffixName = fileName.substring(fileName.lastIndexOf("."));

     logger.info("上传的后缀名为:" + suffixName);

 

     // 文件上传路径

     String filePath = "d:/roncoo/ttt/";

 

     // 解决中文问题,liunx下中文路径,图片显示问题

     // fileName = UUID.randomUUID() + suffixName;

    

     File dest = new File(filePath + fileName);

 

     // 检测是否存在目录

     if (!dest.getParentFile().exists()) {

         dest.getParentFile().mkdirs();

     }

 

     try {

         file.transferTo(dest);

         return "上传成功";

     } catch (IllegalStateException e) {

         e.printStackTrace();

     } catch (IOException e) {

         e.printStackTrace();

     }

     return "上传失败";

}

 

}

三、配置

spring.http.multipart.enabled=true #默认支持文件上传.

spring.http.multipart.file-size-threshold=0 #支持文件写入磁盘.

spring.http.multipart.location= # 上传文件的临时目录

spring.http.multipart.max-file-size=1Mb # 最大支持文件大小

spring.http.multipart.max-request-size=10Mb # 最大支持请求大小

参考视频教程:

http://www.roncoo.com/course/view/c99516ea604d4053908c1768d6deee3d

<无标签>
举报
芝麻绿豆
发帖于8个月前 0回/149阅
顶部