简单的Springboot上传图片生成可访问的url
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相关推荐
- 在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片
在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片 1.首先springboot项目在Window和Li ...
- 利用CSDN平台上传图片保存,生成链接访问。
利用CSDN平台上传图片保存,生成链接访问.
- 【项目实战】 ---- 简单整合SpringBoot + MyBatis + Themyleaf小项目
简单整合SpringBoot + MyBatis + Themyleaf小项目 一.项目环境搭建① 二.数据库表设计及项目环境② 三.图片验证码功能 四.用户注册功能 五.用户登录功能 六.员工的查询 ...
- layui结合springboot上传图片
大家好,我是雄雄,欢迎关注公众号**[雄雄的小课堂]**. 最近实在是忙的抽不开身,并且身上也出现了一堆的毛病,今天牙疼,明天脊椎疼,然后接着又头疼--年纪轻轻的,咋这么多毛病呢?我也在坚持锻炼呢-- ...
- eclipse maven项目 class类部署不到tomcat下_Springboot介绍以及用Eclipse搭建一个简单的Springboot项目教程
简述 本文主要介绍Springboot以及用Eclipse搭建一个简单的Springboot项目. Springboot简介 Springboot是由Pivotal团队提供的全新框架,其设计目的是用来 ...
- 微信公众号简单接入springboot集成weixin4j
微信公众号简单接入springboot集成weixin4j 内网穿透 登录地址:https://natapp.cn/ 注册用户,购买免费渠道 进行配置端口号(我配置的是8802) 根据网址进行下一步操 ...
- springboot下生成复杂word文档方案 在Word软件里面制作模板
系列文章目录 第二章:根据模板导出word,复合格式表格生成.可变列表格生成 第三章:doc和docx插入多图 第四章:web环境下word文档预览 springboot freemarker 生成复 ...
- 详细SpringBoot教程之数据访问
写在前面 鉴于有人留言说想要学习SpringBoot相关的知识,我这里打算写一个SpringBoot系列的相关博文,目标呢是想让看了这一系列博文的同学呢,能够对SpringBoot略窥门径,这一系列的 ...
- Vue+Springboot上传图片将 Base64 码转换为图片保存在指定文件夹
Vue+Springboot上传图片将 Base64 码转换为图片保存在指定文件夹 前言 一.Vue 前端 一.五 注意!!! 二.Springboot 后端 引入Base64依赖 在项目里新建 ut ...
最新文章
- PyTorch 笔记(13)— autograd(0.4 之前和之后版本差异)、Tensor(张量)、Gradient(梯度)
- 我在清华当工程师的日子
- ai作文批改_全球第一份机器人批改的作文 阿里AI批改中文试卷
- 高效的判断素数---筛选法
- Redis学习之复制(三)
- 平衡二叉树的构造_LeetCode-平衡二叉树
- Dom4j完整教程详解
- 什么是javax.ws.rs.core.context? [ 第1部分 ]
- Xcode LaunchImage 载入界面大小设置
- Java 中的悲观锁、乐观锁、自旋锁、适应性自旋锁、偏向锁、轻量级锁、重量级锁、公平锁、非公平锁、可重入锁、共享锁等
- 计算机硬件配置组件,配置vcenter server的硬件(默认指windows版本的)
- 配置Apache虚拟机
- Scala安装及环境变量配置
- linux 文件描述符
- 像科学家一样思考python_像计算机科学家一样思考Python (第2版) 中文pdf完整版
- 最小生成树原理及Kruskal算法的js实现
- python中的特殊函数__call__
- [bzoj2002][Hnoi2010]Bounce 弹飞绵羊(LCT)
- 关于微信小程序img标签不能显示图片的问题
- 手机浏览器下载IOS版APP