配置依賴項
在pom.xml中配置相應的依賴項
<!--引入Spring Boot內嵌的Tomcat對JSP的解析包-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!-- servlet依賴的jar包start -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<!-- servlet依賴的jar包start -->
<!-- jsp依賴jar包start -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
</dependency>
<!-- jsp依賴jar包end -->
<!--jstl標籤依賴的jar包start -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!--jstl標籤依賴的jar包end -->
配置jsp顯示
在application.properties文件配置spring mvc的視圖展示爲jsp。
//前綴 常用的配置爲 /WEB-INF目錄,這裏可以根據自己的項目情況進行配置
spring.mvc.view.prefix=/
//後綴
spring.mvc.view.suffix=.jsp
新建jsp頁面
新建index.jsp、JSPController
@Controller
public class JSPController {
@GetMapping("/boot/index")
public String index(Model model){
model.addAttribute("msg","Spring boot 集成 jsp");
return "index";
}
}
//index.jsp中 調用顯示信息
<body>
${msg}
</body>
遇到問題
啓動程序後訪問boot/index,找不到index.jsp頁面。
解決方案 添加resources配置,因爲idea在構建時沒有自動去編譯一部分文件,在生成的編譯文件中不包含此部分文件,訪問的時候會發現不了。
<resources>
// Java文件下的xml在編譯時不會自動編譯到classes中,所以在此處配置Java目錄下的所有xml文件都一起編譯。
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
// 所有的resources中配置文件都編譯到classes中。
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
// 所有的webapp中文件都編譯到targetPath指定的目錄下,在使用eclipse時無需配置,使用idea時需要配置。
<resource>
<directory>src/main/webapp</directory>
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
完成