springboot集成Thymeleaf(一)

springboot集成Thymeleaf(一)传统Java WEB工程时,我们可以使用JSP页面模板语言,但是在SpringBoot中已经不推荐使用了。SpringBoot支持如下页面模板语言Thymeleaf FreeMarker Velocity Groovy JSP …………其中Thymeleaf是SpringBoot官方所推荐使用的,接下来说说Thymeleaf使用。一、特点动静结合: 1、Thym…

大家好,又见面了,我是你们的朋友全栈君。

传统Java WEB工程时,我们可以使用JSP页面模板语言,但是在SpringBoot中已经不推荐使用了。SpringBoot支持如下页面模板语言

  • Thymeleaf
  • FreeMarker
  • Velocity
  • Groovy
  • JSP
  • …………

其中Thymeleaf是SpringBoot官方所推荐使用的,接下来说说Thymeleaf使用。

一、特点

动静结合:

     1、Thymeleaf 在有网络和无网络的环境下皆可运行
     2、它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果
     3、这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式
     4、浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;
     5、当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。

多方言支持:

    1、Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块
    2、可以快速的实现表单绑定、属性编辑器、国际化等功能

与SpringBoot完美整合:

    1、与SpringBoot完美整合,SpringBoot提供了Thymeleaf的默认配置

    2、并且为Thymeleaf设置了视图解析器,我们可以像以前操作jsp一样来操作Thymeleaf

二、使用

添加依赖:

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

查看thymeleaf源码:idea版本不同查看源码快捷键可能不一样,

查看源码:https://blog.csdn.net/BlackPlus28/article/details/101014267

与解析JSP的InternalViewResolver类似,Thymeleaf也会根据前缀和后缀来确定模板文件的位置:

通过查看源码得知:

springboot集成Thymeleaf(一)

会在templates文件夹下找出.html文件。

数据显示

在resources文件中创建templates文件夹,并创建html文件。如图:

springboot集成Thymeleaf(一)

 

创建一个Controller,并进行返回,名称与html名称保持一致。

在类上加 @Controller注解
@Controller
public class MyController {

    @RequestMapping("/hello")
    public String hello(Model model) {
        model.addAttribute("name","ssss");
        return "Hello";
    }

编写html文件:h1标签,仅仅演示效果

效果图:

springboot集成Thymeleaf(一)

 

使用th之前需要引入命名空间:通过${}这种形式进行取值

<html lang="en" xmlns:th="http://www.thymeleaf.org">
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1 th:text="${name}">Hello</h1>
</body>
</html>

这里就集成好themeleaf。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147165.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • H3C路由器动态NAT配置步骤全解析

    H3C路由器动态NAT配置步骤全解析3C路由器所支持的动态NAT地址转换主要包括:NAPT、NOPAT、EASYIP这三种模式。一般情况下,通过在接口上配置所需关联的ACL和内部全局地址池(当采用EASYIP进行配置时不用配置址池)即可实现动态地址转换,让内部网络用户根据ACL(可选配置)所配置的策略动态选择地址池中可用的IP地址进行转换。但要注意:有些H3C设备还支持仅仅通过判断流出接口报文的源地址,而不使用ACL的方式来实现出接口报文的动态地址转换。

    2022年10月10日
    2
  • 阿里巴巴矢量图标库_阿里 矢量图

    阿里巴巴矢量图标库_阿里 矢量图阿里矢量图库使用方法:https://blog.csdn.net/tanx17/article/details/74357626

    2025年8月11日
    1
  • 数学速算法_三年级数学时分秒换算口诀+精选思维奥数题整理汇总[通俗易懂]

    数学速算法_三年级数学时分秒换算口诀+精选思维奥数题整理汇总[通俗易懂]文末有打印方法时间单位换算口诀1世纪=100年1年=12月大月(31天)有:1月,3月,5月,7月,8月,10月,12月小月(30天)的有:4月,6月,9月,11月平年2月28天,闰年2月29天平年全年365天,闰年全年366天1日=24小时1时=60分1分=60秒1时=3600秒时间之间的进率都是601时=60分1分=60秒…

    2022年6月15日
    107
  • ldd命令 ubuntu_使用示例解释Linux ldd命令

    ldd命令 ubuntu_使用示例解释Linux ldd命令用例子说明Linuxldd命令如果您的工作涉及到Linux中的可执行文件和共享库的深入知识,则需要了解几种命令行工具。其中之一是ldd,您可以使用它来访问共享对象依赖关系。在本教程中,我们将使用一些易于理解的示例来讨论此实用程序的基础知识。请注意,这里提到的所有示例都已在Ubuntu16.04LTS上进行了测试。Linuxldd命令正如开头已经提到的,ldd命令打印共享对象依赖关系。…

    2022年5月3日
    64
  • SPSS篇—卡方检验「建议收藏」

    SPSS篇—卡方检验「建议收藏」今天依旧跟大家分享一个在SPSS中使用率比较高的分析方法:卡方检验。在开始做分析之前,我们需要明白两件事情:卡方检验是什么?一般用来干什么?我们只有充分了解分析方法以后才能够正确的使用它。卡方检验在百科中的解释是:卡方检验是用途非常广的一种假设检验方法,它在分类资料统计推断中的应用,包括:两个率或两个构成比比较的卡方检验;多个率或多个构成比比较的卡方检验以及分类资料的相关分析等。它的原理是…

    2022年5月17日
    54
  • matlab wavedec2 函数,python小波变换 wavedec2函数 各个返回值详解

    matlab wavedec2 函数,python小波变换 wavedec2函数 各个返回值详解python小波变换wavedec2函数各个返回值详解python小波变换wavedec2函数各个返回值详解网上找了好多文章都没有提到这个东西,没有说明wavedec2函数各个返回值究竟是什么意思我们先看看wavedec2函数的大概形式,pywt.wavedec2(data,wavelet,mode=’symmetric’,level=None,axes=(-2,-1))…

    2022年6月29日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号