Springboot之支持jsp

pom.xml

设置<packaging>war</packaging>

<!--支持jsp -->
    <!--由于Spring boot使用的内嵌的tomcat是不支持jsp页面的,所有需要导入额外的包才能解决。-->
    <dependency>
      <groupId>org.apache.tomcat.embed</groupId>
      <artifactId>tomcat-embed-jasper</artifactId>
      <!--打包放到外置tomcat要设置<scope>provided</scope>,使用内置tomcat一定不能设置-->
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <!-- 设置为provided是在打包时会将该包排除,因为要放到独立的tomcat中运行,是不需要的。 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
      <scope>provided</scope>
    </dependency>

application.yml增加下面配置

#配置jsp 在/main/webapp/WEB-INF新建一个views文件夹
spring:
    mvc:
      view:
        prefix: /WEB-INF/views/
        suffix: .jsp

在/main/webapp/WEB-INF新建一个views文件夹 专门来存放jsp文件

增加一个index.jsp文件

增加一个controller

@Controller
public class IndexController {
    @RequestMapping("/")
    public String index() {
        return "index";
    }
}

启动类继承SpringBootServletInitializer 重写configure方法

@SpringBootApplication
public class Application extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(this.getClass());
    }

    public static void main(String[] args) {
        SpringApplication application = new SpringApplication(Application.class);
        application.run(args);
    }
}

启动项目 访问测试

猜你喜欢

转载自www.cnblogs.com/zengnansheng/p/10404630.html