当前位置: 首页 > news >正文

自建网站餐饮服务提供者seoyoon

自建网站餐饮服务提供者,seoyoon,邯郸网络,wordpress网站多层循环调用文章这篇文章算是一篇水文,因为也没啥好讲的,在Spring Boot中,上传文件是我们常常做的,包括我们在实际开发过程中,我们也经常碰到与文件上传有关的功能,这也算是我们常用的一个功能了,毕竟作为开发者…

这篇文章算是一篇水文,因为也没啥好讲的,在Spring Boot中,上传文件是我们常常做的,包括我们在实际开发过程中,我们也经常碰到与文件上传有关的功能,这也算是我们常用的一个功能了,毕竟作为开发者,我们避免不了与各种文件打交道,一般文件上传是我们最常见的一种方式,例如我们对Excel数据的解析入库,图片的裁剪,都需要我们先将文件上传之后再对文件进行解析。

注意本篇博客,主要适合初学者,如果不感兴趣,可以移步了。

单文件上传

本篇,我将采用Thymeleaf模版引擎进行,故而第一步,我们还是引入相关依赖。

		<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><scope>provided</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>

在application.properties文件中配置存放地址,以及允许上传的文件的大小

server.port=1243
spring.servlet.multipart.max-file-size=2MB
spring.servlet.multipart.max-request-size=2MBfile.upload.path=D:/test/
@Controller
@Slf4j
public class UploadController {@Value("${file.upload.path}")private String path;@GetMapping("/")public String uploadPage() {return "upload";}@PostMapping("/upload")@ResponseBodypublic String create(@RequestPart MultipartFile file) throws IOException {String fileName = file.getOriginalFilename();String filePath = path + fileName;File dest = new File(filePath);Files.copy(file.getInputStream(), dest.toPath());return "上传本地文件路径: " + dest.getAbsolutePath();}}
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8" /><title>文件上传页面</title>
</head>
<body>
<h1>文件上传页面</h1>
<form method="post" action="/upload" enctype="multipart/form-data">选择要上传的文件:<input type="file" name="file"><br><hr><input type="submit" value="提交">
</form>
</body>
</html>

通过浏览器,localhost:1243
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
这里仅仅是一个案例,在实际开发过程中,我们需要考虑更多,比如文件上传后的文件我们需要进行相关处理,一般可以添加时间日期等预防同名,在分布式服务下,我们需要考虑文件如何共享访问等等。

多文件上传

多文件上传其实也很简单,在我们上边的基础之上,进行改造就行了,因为涉及到多个文件,故而我们需要将上述代码进行改造,如果是单个文件上传,那么我们就使用一个对象就可以解决,既然涉及到多个文件,那么我们可以尝试使用数组对象进行。

还是之前的那样,第一步先引入依赖:
注意:这里的依赖和上述依赖一模一样,毫无变化,配置文件也是。

		<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><scope>provided</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>

spring.servlet.multipart.max-file-size=2MB
spring.servlet.multipart.max-request-size=2MBserver.port=1243file.upload.path=D:/test/

在前端页面上,我多加了一个文件提交按钮。

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8" /><title>文件上传页面</title>
</head>
<body>
<h1>文件上传页面</h1>
<form method="post" action="/upload" enctype="multipart/form-data">文件1:<input type="file" name="files"><br>文件2:<input type="file" name="files"><br><hr><input type="submit" value="提交">
</form>
</body>
</html>

文件上传控制类:

@Controller
@Slf4j
public class UploadController {@Value("${file.upload.path}")private String path;@GetMapping("/")public String uploadPage() {return "upload";}@PostMapping("/upload")@ResponseBody//主要这里,我们改造的地方,由单个对象变成了数组对象public String create(@RequestPart MultipartFile[] files) throws IOException {StringBuffer message = new StringBuffer();//循环遍历出数组对象for (MultipartFile file : files) {//为了避免文件名同名,我加了日期前置,你也选择精确的具体时间String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());String fileName = date + file.getOriginalFilename();String filePath = path + fileName;File dest = new File(filePath);Files.copy(file.getInputStream(), dest.toPath());message.append("文件上传成功 : " + dest.getAbsolutePath()).append("<br>");}return message.toString();}}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
也不知道怎么说,其实实现一个简单的文件上传案例其实也没啥可以说的,也很简单,可以在以上基础之上,对代码进行改造,至于想改造成啥,那就得看你的需求了。

http://www.15wanjia.com/news/54160.html

相关文章:

  • 郑州专业做淘宝网站建设关键词排名工具有哪些
  • 做网站页面遇到的问题域名权重查询工具
  • 帝国网站网站手机版怎么做北京cms建站模板
  • 沈阳哪家网站制作公司比较好个人网站网页首页
  • 杭州高端模板建站seo优化就业前景
  • 自己做图片网站常用的seo查询工具
  • 自适应网站开发教程寻找外贸客户的网站
  • 网站收藏的链接怎么做天气预报最新天气预报
  • 微信公众号怎么做链接网站百度自媒体平台
  • 烟台网站建设bt磁力搜索器
  • 云南网络推广报价明细南昌seo优化公司
  • 婚恋网站哪家做的最好网站关键词排名外包
  • 秦皇岛 网站制作网店推广方式
  • a站是什么网站怎么推广效果好一点呢
  • 小程序开发平台到底哪家好seo点击排名软件营销工具
  • 怎么做公司门户网站凡科建站怎么建网站
  • 软件开发外包交易平台关键词优化方法有什么步骤
  • 网站头部固定成都网络推广
  • 江苏省住房与城乡建设厅网站首页台州百度快照优化公司
  • 纯图片网站自己怎样推广呢
  • docker wordpress git企业网站优化价格
  • 家里的电脑怎样做网站赚钱刷赞网站推广空间免费
  • 网站建设维护管理软件电商网络营销
  • 东丰在线网站建设百度的链接
  • 企业网络建站互联网营销师是做什么的
  • 阿卯网站建设全自动引流推广软件app
  • 网站排名优化价格营销型网站建设需要多少钱
  • 搬家公司网站制作磁力搜索引擎
  • 手机和pc网站清远今日头条新闻
  • 网站绑定微信公众号google下载官网