spring-boot 项目跳转到JSP页面

     博主在使用sring-boot跳转HTML页面后,由于好奇心就想跳转到JSP页面,就在网上搜相关信息,结果不是跳转500错误就是下载JSP文件。各种坑啊,在博主跳了N多坑后,终于跳转JSP页面成功。故写此文章便于使用到的小伙伴不再进坑。

1、新建spring-boot项目  目录结构如下

spring-boot 项目跳转到JSP页面_第1张图片

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同级。

spring-boot 项目跳转到JSP页面_第2张图片

4、新建JSP页面,此时发现New里面没有JSP页面。需要设置一下才会出现哟。

spring-boot 项目跳转到JSP页面_第3张图片

5、点击File->Project Structure...

spring-boot 项目跳转到JSP页面_第4张图片

6、点击Modules->绿色加号->Web

spring-boot 项目跳转到JSP页面_第5张图片

7、双击此处

spring-boot 项目跳转到JSP页面_第6张图片

8、选择刚刚新建的webapp,点击OK,继续OK。

spring-boot 项目跳转到JSP页面_第7张图片

9、此时webapp上有个蓝色圆点表示设置成功。

spring-boot 项目跳转到JSP页面_第8张图片

10、在webapp上单击右键New,此时出现JSP文件。

spring-boot 项目跳转到JSP页面_第9张图片

11、新建index.jsp

spring-boot 项目跳转到JSP页面_第10张图片

12、index.jsp内容

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    </span>Title<span style="color:#e8bf6a;">


style="color: red">Hello World

13、新建MyWebAppConfigurer类

spring-boot 项目跳转到JSP页面_第11张图片


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包


   org.apache.tomcat.embed
   tomcat-embed-jasper
   7.0.59


   javax.servlet
   jstl

16、启动Application,访问127.0.0.1:8080/index

spring-boot 项目跳转到JSP页面_第12张图片

17、跳转完成。


以上就是spring-boot跳转JSP页面的过程,下面说说跳转遇到的坑。

一、缺少依赖JAR包


   javax.servlet
   jstl

跳转失败

spring-boot 项目跳转到JSP页面_第13张图片

提示还算明确,缺少jstl标签

二、使用provided版本JSP解析器JAR包,


   org.apache.tomcat.embed
   tomcat-embed-jasper
   provided

下载JSP文件

spring-boot 项目跳转到JSP页面_第14张图片

改为


   org.apache.tomcat.embed
   tomcat-embed-jasper
   7.0.59

问题解决,至于为什么provided版本的不行,感兴趣的小伙伴可以深究下,留言给我。

综上所述,两个依赖JAR包一个都不能少。

你可能感兴趣的:(spring-boot)