首先springboot官方推荐使用thymeleaf作为视图模板,但是对于一些如果还想使用jsp技术的人来说,如何在springboot上使用jsp模板呢?
一、首先应该添加以下依赖:
<dependency>
<groupId>org.apache.timcat.embed</groupId>
<artifactId>tomcat.embed.jasper</artifactId>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
如果上述依赖不行话,可以改成下面的依赖
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
</dependency>
同时需要注意一点的是,如果使用jsp作为视图模板,则需要去掉thymeleaf的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
二、在src/main目录下创建webapp目录
三、修改视图解析器
为了方便controller视图跳转
四、因为springboot和idea直接的切合问题,所以需要修改working directory(新版本不用)
五、打包问题
因为jsp使用的是war包,而springboot默认使用的是jar包,所以应该pom文件上添加打war包插件
<groupId>com.itheima</groupId>
<artifactId>itheima_springboot</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
打好的war包,可以直接使用java -jar xx.war运行