SpringBoot+Thymeleaf(html5)使用

SpringBoot+Thymeleaf的使用其实很简单,加依赖,加配置,写html5,然后就可以了,但是其中有遇到一些坑,所以记下来,以备后期查询。

一、在pom.xml里添加依赖

 

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

二、在配置文件(application.yml或者application.properties)里添加配置,此处贴出的是application.yml的代码。

spring:
 thymeleaf:
  #模板的模式,支持 HTML, XML TEXT JAVASCRIPT
  mode: html5
  #编码 可不用配置
  encoding: UTF-8
  #内容类别,可不用配置
  content-type: text/html
  #开发配置为false,避免修改模板还要重启服务器
  cache: false
  #配置模板路径,默认是templates,可以不用配置
  prefix: classpath:/templates/
  suffix: .html

此处有一点需要注意:prefix:classpath:/templates/,如果前缀这里最后有/,那在Controller返回的视图名里就不需要在前面加/。否则会报template might not exist or might not be accessible by any of the configured的错误。详细配置方案如下:

    方法1:

         application.yml最后有/

spring:
prefix: classpath:/templates/

        Controller返回的时前面不需要添加/

@Controller
@RequestMapping("/first")
public class FirstController {
    @RequestMapping("/test")
    public String hello(Model model) {
        String name = "xiaosha";
        model.addAttribute("name", name);
        return "test";
    }
}

方法2:

    application.yml最后没有/

spring:
  prefix: classpath:/templates

        Controller返回的时前面需要添加/ 

@Controller
@RequestMapping("/first")
public class FirstController {
    /**
     * 测试视图解析器
     */
    @RequestMapping("/test")
    public String hello(Model model) {
        String name = "xiaosha";
        model.addAttribute("name", name);
        return "test";
    }

}

 

三、编写html文件、「<html xmlns:th="http://www.thymeleaf.org">」不能少

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>hello</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<p>3333</p>
<input th:value="${name}"/>
</body>
</html>

四、编辑Controller

切记不可用@RestController、因为它是@Controller+@ResponseBody的合集,若用它,返回的就是JSON数据,而不是view。

@Controller
@RequestMapping("/first")
public class FirstController {
    /**
     * 测试视图解析器
     */
    @RequestMapping("/test")
    public String hello(Model model) {
        String name = "xiaosha";
        model.addAttribute("name", name);
        return "test";
    }

}

五、访问,正常显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值