栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

全面解析SpringBoot文件上传功能

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

全面解析SpringBoot文件上传功能

这些天忙着刷题,又怕遗忘了spring boot, 所以抽出一点时间折腾折腾,加深点印象。
spring boot 的文件上传与 spring mvc 的文件上传基本一致,只需注意一些配置即可。

环境要求: Spring Boot v1.5.1.RELEASE + jdk1.7 + myeclipse

1).引入thymeleaf,支持页面跳转

  
   
   org.springframework.boot 
   spring-boot-starter-thymeleaf 
  

2).在 src/main/resources 目录下新建 static 目录和 templates 目录。 static存放静态文件,比如 css、js、image… templates 存放静态页面。先在templates 中新建一个 uploadimg.html



 
 uploadimg.html

 
 
 

 

 

 
 
 


3).在 controller 中写两个方法,一个方法跳转到上传文件的页面,一个方法处理上传文件

//跳转到上传文件的页面
 @RequestMapping(value="/gouploadimg", method = RequestMethod.GET)
 public String goUploadImg() {
  //跳转到 templates 目录下的 uploadimg.html
  return "uploadimg";
 }

 //处理文件上传
 @RequestMapping(value="/testuploadimg", method = RequestMethod.POST)
 public @ResponseBody String uploadImg(@RequestParam("file") MultipartFile file,
   HttpServletRequest request) {
  String contentType = file.getContentType();
  String fileName = file.getOriginalFilename();
  
  String filePath = request.getSession().getServletContext().getRealPath("imgupload/");
  try {
   FileUtil.uploadFile(file.getBytes(), filePath, fileName);
  } catch (Exception e) {
   // TODO: handle exception
  }
  //返回json
  return "uploadimg success";
 }

4).在上面中,我将文件上传的实现写在工具类 FileUtil 的 uploadFile 方法中

public static void uploadFile(byte[] file, String filePath, String fileName) throws Exception { 
  File targetFile = new File(filePath); 
  if(!targetFile.exists()){ 
   targetFile.mkdirs(); 
  }  
  FileOutputStream out = new FileOutputStream(filePath+fileName);
  out.write(file);
  out.flush();
  out.close();
 }

5).在浏览器输入 :http://localhost:8080/gouploadimg 测试

上传文件后:

在应用的 src/main/webapp/imgupload 目录下

6).如果上传的文件大于 1M 时,上传会报错文件太大的错误,在 application.properties 中设置上传文件的参数即可

spring.http.multipart.maxFileSize=100Mb
spring.http.multipart.maxRequestSize=100Mb

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/143159.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号