Spring boot的上传图片功能实例详解
作者:瓦力冫 发布时间:2022-10-09 09:52:00
标签:Spring,boot,上传图片
简介
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
特点
1. 创建独立的Spring应用程序
2. 嵌入的Tomcat,无需部署WAR文件
3. 简化Maven配置
4. 自动配置Spring
5. 提供生产就绪型功能,如指标,健康检查和外部配置
6. 绝对没有代码生成和对XML没有要求配置
下面一段代码给大家介绍Spring boot 上传图片功能,具体代码如下所示:
@ResponseBody
@RequestMapping(path = "/save_photo", method={RequestMethod.POST})
public void addDish(@RequestParam("photos") MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws Exception
{
String path = null;// 文件路径
String json = "";
if (file!=null) {// 判断上传的文件是否为空
String type = null;// 文件类型
String fileName = file.getOriginalFilename();// 文件原名称
System.out.println("上传的文件原名称:"+fileName);
// 判断文件类型
type = fileName.indexOf(".")!=-1?fileName.substring(fileName.lastIndexOf(".")+1, fileName.length()):null;
if (type!=null) {// 判断文件类型是否为空
if ("GIF".equals(type.toUpperCase())||"PNG".equals(type.toUpperCase())||"JPG".equals(type.toUpperCase())) {
// 项目在容器中实际发布运行的根路径
String realPath = request.getSession().getServletContext().getRealPath("/");
// 自定义的文件名称
String trueFileName = String.valueOf(System.currentTimeMillis()) + "." + type;
// 设置存放图片文件的路径
path = realPath+/*System.getProperty("file.separator")+*/trueFileName;
System.out.println("存放图片文件的路径:"+path);
// 转存文件到指定的路径
file.transferTo(new File(path));
System.out.println("文件成功上传到指定目录下");
}
json = "{\"res\":1}";
}else {
System.out.println("不是我们想要的文件类型,请按要求重新上传");
//return null;
json = "{\"res\":0}";
}
}else {
System.out.println("文件类型为空");
//return null;
json = "{\"res\":0}";
}
}else {
System.out.println("没有找到相对应的文件");
json = "{\"res\":0}";
//return null;
}
response.setContentType("application/json;charset=UTF-8");
response.getWriter().print(json);
}
首先注意的是参数要加
@RequestParam("photos") MultipartFile file
你的html可能就类似这样的
<form action="/save_photo" enctype="multipart/form-data" method="post">
<input type="file" name="photos" /> <br>
<input type="submit" value="上传" />
</form>
总结
以上所述是小编给大家介绍的Spring boot的上传图片功能实例详解网站的支持!
来源:http://www.waitingfy.com/archives/1983


猜你喜欢
- 1、JDK1.8之前:假设有实体类User,里面有字段id,我们将相同id的User进行分组,并存放在Map中。(例子不是很恰当,但很能说明
- 我就废话不多说了,大家还是直接看代码吧~ public static void main(String[] args) { &n
- 前言本文主要介绍下Spring事务中的传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是S
- 本文实例讲述了C#实现日期格式转换的公共方法类。分享给大家供大家参考,具体如下:这里演示了C#中一些日期格式的转换。创建公共方法类(Util
- 一、Java IO流1、概念在Java中,把不同的输入源 / 输出源(如:键盘、文件、网络链接等)抽象的表述为“流”(stream)通过 ”
- 前言本文主要给大家分享了关于java文字转语音播报的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧方法如下一、po
- 一.显示、隐藏 jQuery 中显示方法为:.show(),隐藏方法为:.hide()。在无参数的时候,只是硬性的显示内容和隐藏内
- 百度一下搭建go-cqhttp,千篇一律都是采用python搭建的,Java搭建根本没有。导致自己在搭建的时候可折磨了,出现了许多的问题。唯
- 写在开头java.util.Collection 作为Java开发最常用的接口之一,我们经常使用,今天我带大家一起研究一下Collectio
- 想做一个APP,设计中有侧边栏这个功能,所以现在开始学习下侧边栏的实现。在官方的UI空间中已经给出了DrawerLayout这个侧滑的菜单空
- 实践过程效果代码public partial class Form1 : Form{ public Form1()
- mybatis 查询返回Map<String,Object> 类型,平时没太注意怎么用,今天又遇到了总结记录一下,方便以后处理此
- 实例如下所示:private static String savefile = "E:\\test.txt";priva
- IDEA 新手使用手册1 简介IDEA的全称是IntelliJ IDEA,这是一个java编程语言开发的集成环境。IDEA的每一个方面都是为
- Android-Room数据库(介绍)前言在SQLite数据库中,我们可以指定对象之间的关系,因此我们可以将一个或多个对象与一个或多个其他对
- 在使用面向对象的语言进行项目开发的过程中,较多的会使用到“继承”的特性,但是并非所有的场景都适合使用“
- JWT可以理解为一个加密的字符串,里面由三部分组成:头部(Header)、负载(Payload)、签名(signature)由base64加
- Java 项目中常常回遇到发送邮件Java 发送邮件有几种,今天先给大家介绍用 HtmlEmail 来发送邮件,我这里是用 Maven 来搭
- 通过程序自动的读取其它网站网页显示的信息,类似于爬虫程序。比方说我们有一个系统,要提取BaiDu网站上歌曲搜索排名。分析系统在根据得到的数据
- Java中Filter、Servlet、Listener的学习资料,希望大家喜欢1、Filter的功能filter功能,它使用户可以改变一个