SpeingBoot 官方是不推荐使用jsp这个引擎模板的,所有它的默认配置中是没有配置jsp支持的。
一、SpringBoot 整合JSP
1、在pom.xml文件中导入jsp依赖的jar包,一个是jstl标签,一个是jsp的引擎
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-spec</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-impl</artifactId>
<version>1.2.5</version>
</dependency>
<!-- 使用jsp引擎(必须要有),springboot内置tomcat没有此依赖,用于编译jsp -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>8.5.34</version>
</dependency>
2、在SpringBoot的全局配置文件中修改SpringBoot的默认视图解析器的前缀和后缀
======= YAML 文件=====
server:
port: 80
## jsp支持
spring:
mvc:
view:
prefix: /WEB-INF/view/
suffix: .jsp
## 关闭默认模板引擎
thymeleaf:
cache: false
enable-spring-el-compiler: false
======= properties 文件=====
spring.mvc.view.prefix=/WEB-INF/view/
spring.mvc.view.suffix=.jsp
spring.thymeleaf.cache=false
spring.thymeleaf.enabled=false
或者通过JavaConfig的方式:
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
/**
* 配置视图解析器
*
* @return
*/
@Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/jsp/");
resolver.setSuffix(".jsp");
resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}
}
或者
@Configuration
public class WebConfig implements WebMvcConfigurer{
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
registry.jsp("/WEB-INF/jsp/", ".jsp");
}
}
3、创建一个Controller测试
@Controller
public class IndexController {
@GetMapping("/indexJsp")
public String indexJsp(Model model){
User user = new User();
user.setUsername("张三");
user.setAge(18);
user.setBirthday(new Date());
model.addAttribute("users", user);
return "indexJsp";
}
}
4、在 src/main/webapp/WEB-INF/view/ 下创建 jsp文件
自己需要创建webapp,下面又演示。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>JSP</title>
</head>
<body>
<h4>JSP 页面</h4>
${users}<br>
用户名:${users.username}<br>
年龄:${users.age}<br>
生日:${users.birthday}<br>
</body>
</html>
访问项目:
二、创建 JSP 时,需要进行一点设置
方式一:创建 webapp文件夹,然后设置
选择 File -> project structure
设置完成之后就可以创建 JSP 文件啦
方式二:在 Modules中直接创建配置
选中module,按F4,或者File -> project Structure。然后同上图,创建webapp,并设置。
ends ~