spring boot 完整集成jsp。(亲测可用)
1.idea在工程源文件夹src/main/下创建web资源文件夹,webapp,并设置为资源文件。
2.application.properties文件设置如下
#jsp 支持 spring.mvc.view.suffix=.jsp spring.mvc.view.prefix=/WEB-INF/jsp/ #关闭默认模板引擎 spring.thymeleaf.cache=false spring.thymeleaf.enabled=false
3.maven配置jsp相关依赖。
<!--jsp支持--> <!-- servlet 依赖. --> <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> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency>
4.创建ServletInitalizer集成SpringbootServletInitalizer,绑定自己添加了@SpringbootApplication类。
import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.support.SpringBootServletInitializer; public class ServletInitalizer extends SpringBootServletInitializer { @Override protected final SpringApplicationBuilder configure(final SpringApplicationBuilder application) { return application.sources(Application1.class); } }
5.webapp示例。
6.添加maven spring boot插件,将pom文件打包方式改成war。
7.执行springboot:run。可以看到程序正常运行。
8.也可以用maven package打包部署到tomcat。执行mvn:package。