解决SpringBoot启动过后不能访问jsp页面的问题(超详细)
问题描述
SpringBoot是一个高度集成化的框架,它不需要xml和配置文件即可构建Spring应用程序。然而,当我们在使用SpringBoot构建web应用程序的过程中,有时会遇到不能访问jsp页面的问题。这是因为SpringBoot默认使用thymeleaf作为模板引擎,而不是jsp。
解决方案
以下是解决SpringBoot启动后不能访问jsp页面的问题的超详细攻略:
步骤1:在pom.xml文件中添加以下依赖:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
这些依赖项将启用jsp支持。
步骤2:在application.properties中添加以下配置:
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
这将告诉SpringBoot在哪里找到jsp视图。
步骤3:添加jsp页面。
在/src/main/webapp/WEB-INF/jsp/目录下创建jsp文件。
另外还需要添加/index.jsp文件,否则可能会出现404错误。
<html>
<body>
<h1>Hello World!</h1>
</body>
</html>
步骤4:创建Controller
创建一个简单的控制器来返回jsp视图:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class JspController {
@GetMapping("/jsp")
public String jsp() {
return "index";
}
}
这将在访问“/jsp”时返回index.jsp视图。
步骤5:运行应用程序
现在你可以运行应用程序并在浏览器中访问“http://localhost:8080/jsp”页面。
如果你看到“Hello World!”,就说明已经成功显示jsp视图了!
示例说明
示例1: 查看SpringBoot默认模板引擎
SpringBoot默认使用thymeleaf作为模板引擎,我们可以在pom.xml中看到以下依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
示例2: 修改SpringBoot默认模板引擎为jsp
在之前的步骤中,我们通过在pom.xml中添加依赖、在application.properties中添加配置并创建jsp页面以及添加Controller来修改了SpringBoot默认的模板引擎为jsp。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解决SpringBoot启动过后不能访问jsp页面的问题(超详细) - Python技术站