SpringBoot返回html页面

一般Controller返回数据或页面,今天谈一下返回页面的场景。

一.不使用template

1. controller中定义对应的访问路由及返回的页面(使用Controller,不要使用RestController),如:

@GetMapping("/hello")
public String test2() {
    return "hello";
}

2.在SpringBoot配置文件中配置SpringMVC

spring:
  mvc:
    view:
      prefix: /
      suffix: .html

3.html文件配置路径。

静态文件要放在SpringBoot默认的加载路径下(SpringBoot中的src/main/resources/文件夹对应classpath:):

classpath:/META-INF/resources、classpath:/resources、classpath:/static、classpath:/public

二.使用thymeleaf

1.引入thymeleaf依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2.html放在classpath:/templates下。如果html都是放在templates下,SpringBoot的配置文件不要配置,因为默认配置就是这个路径。

3.如果要自定义需要在SpringBoot配置文件中自定义配置。

spring:
  thymeleaf:
    suffix: .html
    prefix: classpath:/xx/xx/

如果有更深层的路径,可以在controller的返回值拼上对应的html路径。

如配置为:prefix: classpath:/templates/,现要返回templates/order/order.html,controller就要返回 "order/order"
原文地址:https://www.cnblogs.com/GrapefruitTea/p/10810349.html