Springboot的默认视图支持是Thymeleaf。这里先不谈,这么优秀的框架怎么可能不能使用JSP呢?不允许的。
那么需要添加对jsp的支持。
pom.xml
在pom.xml文件中添加依赖
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> </dependency> <!--支持jsp --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>
这样还不行,访问页面404.因为Spring boot使用的内嵌的tomcat,而内嵌的tomcat是不支持jsp页面的,所有需要导入额外的包才能解决。
<dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency>
这里设置为provided是在打war包时会将该包排除在外,因为要放到独立的tomcat中运行,这个就不需要了。
application.properties
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
这样就可以对jsp支持了。但是,我们说springboot都不喜欢用JSP这么老的技术了,我们也应该与时俱进呐,尽量不用JSP。
如果你是开发web项目,使用jsp的话,你在部署项目的时候,不论你使用jar包部署,还是war包部署(下一回说)。都需要我们手动给它静态资源和JSP页面。否则都是找不到页面的。
手动放置这些静态资源和JSP页面的路径是:和jar包同目录下 src/main/webapp...里面放一些比如:images包啊,js包啊,WEB-INF包啊..