SpringBoot 编写
首先用JSP,要引依赖
<!-- jsp依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!-- tomcat 的支持.-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
然后,yaml文件配置
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
---------
server:
port: 8090
servlet:
context-path: /test
tomcat:
uri-encoding: UTF-8
max-threads: 1000
min-spare-threads: 30
注意,此处定义了前缀为"/test",如果不定义前缀,则各个地方都不用’’/test"
然后写contrllor
@RestController
public class MyController {
/**
* 上传视频、图片接口
* */
@PostMapping(value="/fileUpload")
@ApiOperation(value = "上传视频、图片",httpMethod = "POST")
public String uploadFile(@ApiParam("上传的资源")@RequestParam("file") MultipartFile file, Model model, HttpServletRequest request){
if(file.isEmpty()){
System.out.println("文件为空");
}
//获取文件名
String fileName = file.getOriginalFilename();
//后缀名
String suffixName = fileName.substring(fileName.lastIndexOf("."));
//上传后的路径
String filePath = "D://temp-rainy//";
//新文件名
fileName = UUID.randomUUID() + suffixName;
File dest = new File(filePath + fileName);
if(!dest.getParentFile().exists()){
dest.getParentFile().mkdir();
}
try {
file.transferTo(dest);
} catch (IOException e) {
e.printStackTrace();
}
String filename = "/test/temp-rainy/" + fileName;
model.addAttribute("filename",filename);
StringBuilder result = new StringBuilder();
result.append("<html>\n" +
"<head>\n" +
" <title>Title</title>\n" +
"</head>\n" +
"<body>");
result.append("<img src=" + filename + "/>");
result.append("</body>\n" +
"</html>");
return result.toString();
}
}
然后编写JSP页面,具体整合查看:
【SpringBoot学习】1、SpringBoot 配置 jsp 模板引擎
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="/test/fileUpload" method="post" enctype="multipart/form-data">
<label>上传图片</label>
<input type="file" name="file"/>
<input type="submit" value="上传"/>
</form>
<p>图片:</p>
<img src="${filename }"/>
</body>
</html>
注意:如果yaml文件没有增加"/test"前缀,则controller和jsp中的路径都不用加"/test"
然后启动SpringBoot项目
完毕