前言:虽然 jsp
逐渐成为过去式,但是有些"需求"还是会要求使用jsp项目,下面就是springboot项目中整合jsp文件的过程。
一、添加依赖
在pom.xml
文件中导入依赖
xml
<!-- JSP解析依赖-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!-- jstl 标准标签库 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
二、修改配置文件
applicaiton.yml
文件
xml
spring:
mvc:
view:
prefix: /WEB-INF/views # 存放jsp文件的路径
suffix: .jsp # 后缀
三、新建视图解析类
位置:/config/WebMvcConfig.java
java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
/**
* 在 WebMvcConfigurer 中配置视图解析器
* InternalResourceViewResolver是SpringMVC自带的一个视图解析器。
* setPrefix() 方法指定 JSP 文件所在的目录,
* setSuffix() 方法指定 JSP 文件的后缀名。
* 在使用 JSP 视图时,可以将视图名称设置为 JSP 文件名,例如 return "index",无需指定完整的 JSP 文件路径与后缀。
*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Bean
public InternalResourceViewResolver jspViewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/views/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
}
四、新建web文件夹
位置:/src/main/web
新建文件夹后,在idea中添加web
模块
第二步中的 \WEB-INF\web.xml
不需要自己创建,idea会帮助自动生成。
完成上述操作后,再在WEB-INF
目录下新建views
文件夹。
五、在views文件夹下新建index.jsp文件
java
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Jsp</title>
</head>
<body>
<h1>index.jsp</h1>
<h1>${msg}</h1>
</body>
</html>
六、编写测试类
java
@Controller
public class HelloController {
@GetMapping("/index")
public String index(Model model){
//参数1:将要用到jsp文件中的名字
//参数2:查询到的内容或对象
model.addAttribute( "msg","Hello world,springboot + jsp" );
return "index";
}
}