springboot实现简单的上传下载

eneity:/** * 主键 */ @Id @Column(length = 50) private String id= UUIDHelper.NewID(); /** * 上传人 */ private String siteId; /** * 文件路径 */ private String path;

controller:

/** * 文件上传 * @param siteId * @return RestResponse */ @ApiOperation(value = “文件上传”, notes = “文件上传”) @PostMapping(“/uploadFile”) public RestResponse upload(String siteId, MultipartFile file) { RestResponse restResp = new RestResponse(); if (StringUtils.isBlank(siteId)){ return restResp.setMsg(“siteId不能为空”); } try { //公共地址 String fileSpace=”F:/demo_upload”; //定义一个保存数据库的相对目录 String uploadPathDB=”/”+siteId+”/file”;// 获取文件名 String filename = file.getOriginalFilename(); if(StringUtils.isNotBlank(filename)){ //确定文件的最终上传路径 String finalFacePath=fileSpace+uploadPathDB+”/”+filename; //设置保存数据库中的目录 uploadPathDB+=(“/”+filename); //判断目录是否存在,不存在就创建 File outFile=new File(finalFacePath); if(outFile.getParentFile()!=null||!outFile.getParentFile().isDirectory()){ outFile.getParentFile().mkdirs(); } //上传 file.transferTo(outFile); //将上传的文件名保存数据库 DtoFileUpload files = new DtoFileUpload(); files.setSiteId(siteId); files.setPath(uploadPathDB); service.save(files); restResp.setRestStatus(StringUtil.isNull(outFile) ? ERestStatus.UNMATCH_RECORD : ERestStatus.SUCCESS); return restResp; } } catch (IOException e) { e.printStackTrace(); } return restResp.setMsg(“上传失败”); } /** * 文件下载 */ @ApiOperation(value = “文件下载”, notes = “文件下载”) @GetMapping(“/download”) public void download(String id, HttpServletResponse resp) throws IOException { DtoFileUpload file = service.findById(id);// String fileName=file.getSiteId(); String path=file.getPath(); String downPath=”F:/demo_upload/”+path; FileInputStream fileInputStream=new FileInputStream(downPath); ServletOutputStream outputStream = resp.getOutputStream(); IOUtils.copy(fileInputStream,outputStream); fileInputStream.close(); }

简单代码如上,可以直接套用,喜欢可以点个赞哦,谢谢

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
(0)
用户投稿
上一篇 2022年6月17日
下一篇 2022年6月17日

相关推荐

  • 苹果发布iOS15.6.1正式版

    财经网科技8月18日讯,据新浪科技消息,苹果今日发布iOS和iPadOS 15.6.1,本次更新包括错误修复和安全改进。iOS15.6.1和iPadOS 15.6.1解决了可能导致…

    2022年8月19日
  • IP地址归属地必须展示?《互联网用户账号信息管理规定》来了

    摘要:对于前一段时间关于平台展示IP归属地大家的各种问题《互联网用户账号信息管理规定》第二章第十二条、第十三条也做了明确说明。 6月27日,国家互联网信息办公室发布《互联网用户账号…

    2022年6月30日
  • 红魔8 Pro快马加鞭,20G+1TB首批备货100万台,多少人会要?

    利用高运存和大内存来带动手机的流畅度,这是安卓手机厂商们经常爱干的事情,因为安卓手机在系统本源上和iPhone很不一样,简单来说安卓手机要提高流畅度的捷径就是把运存做大,所以我们看…

    2022年8月24日
  • 程序开发数据库版本控制必备 – Flyway

    背景 在我们日常产品发布的过程中,代码的版本控制可以使用git、svn工具实现。对于数据库每当发布时会出现手动执行sql脚本进行升级数据库,中间经常出现一些漏写、错写情况,对数据库…

    2022年6月21日
  • 早秋不必买太多衣服,一件衬衫就能打造N种穿搭,百搭实穿又洋气

    又要到早秋季节啦,换季的时候,女孩们最纠结的事情就是要买什么样的衣服,买衣服这件事情确实说简单也简单,说难也难,因为有的人身材好,穿啥衣服都好看,有的人身材一般,所以穿衣服就需要谨…

    2022年8月19日
  • 营销原来如此简单

    营销不应该如此复杂 作者简介 赵晟泉 30年资深营销专家,服务工行,银联,华为,阿里等大量知名企业;前世界3强营销高管,曾任职于亚马逊,领英,甲骨文,惠普,戴尔等公司 ;畅销书《银…

    2022年8月1日
  • 《使命召唤:战区》泄露 或将与美剧《伞学院》联动

    《使命召唤》第4赛季“重装”于今天(7月28日)正式为《先锋》和《战区》玩家推出。数据挖掘者已经在挖掘游戏文件以发现未来的内容。一位著名的泄密者表示,更多的《使命召唤:现代战争2》…

    2022年7月29日
  • 帅呆了!马面裙+白衬衫火爆全网,其实这些汉服混搭也不错

    在我们的印象中,汉服是怎样的呢?端庄大气、翩若惊鸿、英姿飒爽、玉树临风,这一个个描写人物的玲珑之词,用来形容我们的传统服饰却没有丝毫违和。 可是有不少刚入坑的袍子苦于汉服日常穿着不…

    2022年8月2日
  • 抖音的收货地址怎么更改

    抖音主播带货吸引了大批观众进行购买,但很多小伙伴不知道抖音的收货地址怎么更改。下面就一起来学习下吧。 抖音的收货地址怎么更改 1、打开抖音,点击下方菜单栏【我】。 2、点击右上角【…

    2022年5月6日
  • BAT大厂程序员常用的IDE工具,你接触过哪些?

    一、Cloud Toolkit Cloud Toolkit 是一款 IDE 插件,可以帮助开发者更高效地开发、测试、诊断并部署应用。通过 Cloud Toolkit,开发者能够方便…

    2022年8月14日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息