controller 层

@RestController
@RequestMapping("/api/file")
public class FileController {@Autowiredprivate FileUploadService fileUploadService;@PostMapping("/upload")@ApiOperation("文件上传")public String uploadFile(MultipartFile file , HttpServletRequest request) {String linkUrl = fileUploadService.upload(file,request);return  linkUrl;}}

service   层

public interface FileUploadService {/*** 上传** @param file* @return*/String upload(MultipartFile file, HttpServletRequest request);;实现类的代码
@Service
public class WebFileUploadServiceImpl implements FileUploadService {@Overridepublic String upload(MultipartFile file,HttpServletRequest request) {String path = this.filetoMultipartFile(file,request);return path;}public String filetoMultipartFile(MultipartFile file, HttpServletRequest request){File f = null;try {InputStream ins = file.getInputStream();f = new File(file.getOriginalFilename());String path= inputStreamToFile(ins, f,request);return path;} catch (IOException e){e.printStackTrace();}return null;}public static String inputStreamToFile(InputStream ins,File file,HttpServletRequest request) {try {String strBackUrl = "http://" + request.getServerName() //服务器地址+ ":"+ request.getServerPort() ;          //端口号System.out.println(strBackUrl);//项目指定存放图片地址String s = IdUtil.snowId()+file.toString().substring(file.toString().length()-5);String filename = "E:\\upload\\src\\main\\resources\\static\\image\\"+s;OutputStream os = new FileOutputStream(filename);int bytesRead = 0;byte[] buffer = new byte[8192];while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {os.write(buffer, 0, bytesRead);}os.close();ins.close();return strBackUrl+"/image/"+s;} catch (Exception e) {e.printStackTrace();}return null;}
}

生成地址 http://ip:端口/image/6078781770886840324.jpg

设置热部署5秒重启服务器就可以查看图片

spring2.x版本设置上传图片大小

#单个文件大小

spring.servlet.multipart.max-file-size = 100MB

#请求文件大小

spring.servlet.multipart.maxRequestSize= 100MB

简单的Springboot上传图片生成可访问的url相关推荐

  1. 在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片

    在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片 1.首先springboot项目在Window和Li ...

  2. 利用CSDN平台上传图片保存,生成链接访问。

    利用CSDN平台上传图片保存,生成链接访问.

  3. 【项目实战】 ---- 简单整合SpringBoot + MyBatis + Themyleaf小项目

    简单整合SpringBoot + MyBatis + Themyleaf小项目 一.项目环境搭建① 二.数据库表设计及项目环境② 三.图片验证码功能 四.用户注册功能 五.用户登录功能 六.员工的查询 ...

  4. layui结合springboot上传图片

    大家好,我是雄雄,欢迎关注公众号**[雄雄的小课堂]**. 最近实在是忙的抽不开身,并且身上也出现了一堆的毛病,今天牙疼,明天脊椎疼,然后接着又头疼--年纪轻轻的,咋这么多毛病呢?我也在坚持锻炼呢-- ...

  5. eclipse maven项目 class类部署不到tomcat下_Springboot介绍以及用Eclipse搭建一个简单的Springboot项目教程

    简述 本文主要介绍Springboot以及用Eclipse搭建一个简单的Springboot项目. Springboot简介 Springboot是由Pivotal团队提供的全新框架,其设计目的是用来 ...

  6. 微信公众号简单接入springboot集成weixin4j

    微信公众号简单接入springboot集成weixin4j 内网穿透 登录地址:https://natapp.cn/ 注册用户,购买免费渠道 进行配置端口号(我配置的是8802) 根据网址进行下一步操 ...

  7. springboot下生成复杂word文档方案 在Word软件里面制作模板

    系列文章目录 第二章:根据模板导出word,复合格式表格生成.可变列表格生成 第三章:doc和docx插入多图 第四章:web环境下word文档预览 springboot freemarker 生成复 ...

  8. 详细SpringBoot教程之数据访问

    写在前面 鉴于有人留言说想要学习SpringBoot相关的知识,我这里打算写一个SpringBoot系列的相关博文,目标呢是想让看了这一系列博文的同学呢,能够对SpringBoot略窥门径,这一系列的 ...

  9. Vue+Springboot上传图片将 Base64 码转换为图片保存在指定文件夹

    Vue+Springboot上传图片将 Base64 码转换为图片保存在指定文件夹 前言 一.Vue 前端 一.五 注意!!! 二.Springboot 后端 引入Base64依赖 在项目里新建 ut ...

最新文章

  1. PyTorch 笔记(13)— autograd(0.4 之前和之后版本差异)、Tensor(张量)、Gradient(梯度)
  2. 我在清华当工程师的日子
  3. ai作文批改_全球第一份机器人批改的作文 阿里AI批改中文试卷
  4. 高效的判断素数---筛选法
  5. Redis学习之复制(三)
  6. 平衡二叉树的构造_LeetCode-平衡二叉树
  7. Dom4j完整教程详解
  8. 什么是javax.ws.rs.core.context? [ 第1部分 ]
  9. Xcode LaunchImage 载入界面大小设置
  10. Java 中的悲观锁、乐观锁、自旋锁、适应性自旋锁、偏向锁、轻量级锁、重量级锁、公平锁、非公平锁、可重入锁、共享锁等
  11. 计算机硬件配置组件,配置vcenter server的硬件(默认指windows版本的)
  12. 配置Apache虚拟机
  13. Scala安装及环境变量配置
  14. linux 文件描述符
  15. 像科学家一样思考python_像计算机科学家一样思考Python (第2版) 中文pdf完整版
  16. 最小生成树原理及Kruskal算法的js实现
  17. python中的特殊函数__call__
  18. [bzoj2002][Hnoi2010]Bounce 弹飞绵羊(LCT)
  19. 关于微信小程序img标签不能显示图片的问题
  20. 手机浏览器下载IOS版APP

热门文章

  1. mac系统mysqld进程无法kill掉的问题
  2. python 实现冒泡排序的思路和代码
  3. LaTex插入eps或pdf(或svg)以及去除eps、pdf白边
  4. 一文看懂前端和后端开发
  5. android下划线链接,Android使用TextView实现无下划线超链接的方法
  6. 全文翻译 WP.29-R155
  7. 获取定位及附近位置 , 输入框搜索附近位置(三种方法)
  8. IDEA热部署插件Jrebel安装以及使用步骤
  9. 用Python发送QQ消息
  10. OCR - 微软windows 11系统自带的Windows OCR功能初体验