SpringBoot整合Thymeleaf模板引擎

什么是模板引擎

以前用ajax获取数据,在自己拼接到前端页面 是一种前后端交互的方式

模板引擎也是一种前后端交互的方式。

jsp也是一种模板引擎,非常老的技术

为什么要使用模板引擎

我们通过ajax获取到数据后,需要把数据渲染到页面,在学习模板引擎前,我们的做法是大量的拼接字符串,对于结构简单的页面,这么做还行

但是如果页面结构很复杂,使用拼串的话代码可阅读性非常的差,而且非常容易出错,后期代码维护也是相当的麻烦。

什么是Thymeleaf

Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直接在浏览器中打开并正确显示模板页面 。

视频教学

【狂神说Java】SpringBoot最新教程IDEA版通俗易懂_哔哩哔哩_bilibili

一、创建一个SpringBoot项目

SpringBoot框架快速入门搭建Hello World

二、引入依赖

<!--模板引擎Thymleaf 整合-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
    <groupId>net.sourceforge.nekohtml</groupId>
    <artifactId>nekohtml</artifactId>
    <version>1.9.22</version>
</dependency>
 

三、配置

在下面文件中配置,先把它的格式改成.yml的格式

src/main/resources/application.yml

spring:
  thymeleaf:
    cache: false # 关闭页面缓存
    encoding: UTF-8 # 模板编码
    prefix: classpath:/templates/  # 页面映射路径
    suffix: .html # 试图后的后缀
    mode: HTML5 # 模板模式
 

使用规则

1.前端文件必须在templates的文件夹下

2.前端文件的后缀名必须是html

3.静态资源都要放在static文件夹里面

实现页面跳转

1.在resources下新建templates文件夹(不要忘记引入上面的依赖)

2.在里面新建一个home.html的文件,随便写点效果

<!DOCTYPE html>
<html lang="en" >

<head>
    <meta charset="UTF-8">
    <title>hello</title>
</head>
<body>
就这吗?这么简单?
</body>
</html>

3.controller层,随便写一个controller

    /**
     * 通过模板引擎Thymleaf进行前后端交互
     * return后面 自动识别到resources/templates里面的html文件
     * @return
     */
    @RequestMapping("/home")
    public String home() {
        return "home";
    }

controller层的方法的return的里面就写templates里面html的名称

就能自动识别到对应的前端页面

注意

不要在这个方法上面加上    @ResponseBody 注解

加上之后就变成和SpringBoot快速入门里面的helloword一样了

就会直接显示引号的内容,而不是显示hello.html的文件

4.启动项目,并访问对应路径,就能显示hello.html的内容了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值