gpt4 book ai didi

springboot 中文件上传下载实例代码

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章springboot 中文件上传下载实例代码由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者.

Spring Boot特点 。

1. 创建独立的Spring应用程序 。

2. 嵌入的Tomcat,无需部署WAR文件 。

3. 简化Maven配置 。

4. 自动配置Spring 。

5. 提供生产就绪型功能,如指标,健康检查和外部配置 。

6. 绝对没有代码生成和对XML没有要求配置[ 。

springboot 实现文件上传下载实例代码如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
@Controller
public class FileUploadCtrl {
  @Value ( "${file.upload.dir}" )
  private String path;
  /**
   * 实现文件上传
   * */
  @RequestMapping (value = "/fileUpload" , method = RequestMethod.POST)
  @ResponseBody
  public Map<String,Object> fileUpload( @RequestParam ( "fileName" ) MultipartFile file){
   Map<String,Object> map = new HashMap<String, Object>();
   int no = 0 ;
   String msg = "上传失败!" ;
   if (!file.isEmpty()){
    String fileName = file.getOriginalFilename();
    File dest = new File(path + "/" + fileName);
    if (!dest.getParentFile().exists()){ //判断文件父目录是否存在
     dest.getParentFile().mkdir();
    }
    try {
     file.transferTo(dest); //保存文件
     no = 1 ;
     msg = "上传成功!" ;
    } catch (IllegalStateException e) {
     e.printStackTrace();
    } catch (IOException e) {
     e.printStackTrace();
    }
   }
   map.put( "no" ,no);
   map.put( "msg" , msg);
   return map;
  }
  @RequestMapping (
    value = "/fileDownload" ,
    method = RequestMethod.GET
  )
  public ResponseEntity<?> getGwFileContent( @RequestParam String fileName, @RequestParam int flag) {
   HttpHeaders headers = new HttpHeaders();
   headers.add( "Cache-Control" , "no-cache, no-store, must-revalidate" );
   String filepath = path+ "/" +fileName;;
   InputStream is = null ;
   try {
    headers.add( "Content-Disposition" , String.format( "attachment; filename=\"%s\"" , new String(fileName.getBytes( "GBK" ), "ISO8859-1" )));
    if (flag== 0 ){ //表示获取缩略图
     File file = new File(filepath);
     filepath = path+ "/xx" +fileName;
     File xxFile = new File(filepath);
     if (!xxFile.exists()){ //不存在就生成缩略图
      Thumbnails.of(file).scale( 0 .25f).toFile(xxFile);
     }
    }
    is = new FileInputStream( new File(filepath));
   } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
   } catch (FileNotFoundException e) {
    e.printStackTrace();
   } catch (IOException e) {
    e.printStackTrace();
   }
   headers.add( "Pragma" , "no-cache" );
   headers.add( "Expires" , "0" );
   return ResponseEntity
     .ok()
     .headers(headers)
     .contentType(MediaType.parseMediaType( "application/octet-stream" ))
     .body( new InputStreamResource(is));
  }
}

总结 。

以上所述是小编给大家介绍的springboot 中文件上传下载实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我网站的支持! 。

原文链接:http://www.cnblogs.com/yshyee/p/7839101.html 。

最后此篇关于springboot 中文件上传下载实例代码的文章就讲到这里了,如果你想了解更多关于springboot 中文件上传下载实例代码的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com