原路径:https://blog.csdn.net/qq_36820717/article/details/80008225
1、新建spring-boot项目 目录结构如下
2、新建TestController.java文件,内容如下
package com.example.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class TestController {
@RequestMapping("/index")
public String index(){
return "index";
}
}
3、新建webapp文件夹,与resources同级。
4、新建JSP页面,此时发现New里面没有JSP页面。需要设置一下才会出现哟。
5、点击File->Project Structure...
6、点击Modules->绿色加号->Web
7、双击此处
8、选择刚刚新建的webapp,点击OK,继续OK。
9、此时webapp上有个蓝色圆点表示设置成功。
10、在webapp上单击右键New,此时出现JSP文件。
11、新建index.jsp
12、index.jsp内容
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1 style="color: red">Hello World</h1>
</body>
</html>
13、新建MyWebAppConfigurer类
14、MyWebAppConfigurer内容
package com.example.controller;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
import org.springframework.web.servlet.view.JstlView;
@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/");
viewResolver.setSuffix(".jsp");
viewResolver.setViewClass(JstlView.class);
return viewResolver;
}
}
15、在pom.xml中加入依赖JAR包
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>7.0.59</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
16、启动Application,访问127.0.0.1:8080/index
17、跳转完成。
以上就是spring-boot跳转JSP页面的过程,下面说说跳转遇到的坑。
一、缺少依赖JAR包
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
跳转失败
提示还算明确,缺少jstl标签
二、使用provided版本JSP解析器JAR包,
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
下载JSP文件
改为
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>7.0.59</version>
</dependency>
问题解决,至于为什么provided版本的不行,感兴趣的小伙伴可以深究下,留言给我。
综上所述,两个依赖JAR包一个都不能少。
---------------------
作者:黄粱大梦
来源:CSDN
原文:https://blog.csdn.net/qq_36820717/article/details/80008225