SpringBoot整合Thymeleaf的方法

 更新时间:2020年02月15日 15:42:31   作者:crazy戴夫  
这篇文章主要介绍了SpringBoot整合Thymeleaf的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

简介:

  在目前的企业级应用开发中 前后端分离是趋势,但是视图层技术还占有一席之地, Spring Boot 对视图层技术提供了很好的支持,官方推荐使用的模板引擎是 Thymeleaf 不过像 FreeMarker 也支持, JSP 技术在这里并不推荐使用。

  Thymeleaf 是新一代 Java 模板引擎,类似于 Velocity、FreeMarker 等传统 Java 模板引擎。与传统 Java 模板引擎不同的是 Thymeleaf 支持 HTML 原型,既可 以让前端工程师在浏览器中直接打 开查看样式,也可以让后端工程师结合真实数据查看显示效果。 同时, Spring Boot 提供了 Thymeleaf 自动 配置解决方案,因此Spring Boot 中使用 Thymeleaf 常方便。

1.引入依赖:

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

2.application.properties

#是否开启缓存,开发时可设置为false,默认为true
spring.thymeleaf.cache=true
#是否检查模板是否存在,默认为true
spring.thymeleaf.check-template=true
#是否检查模板位置是否存在,默认为true
spring.thymeleaf.check-template-location=true
#模板文件编码
spring.thymeleaf.encoding=UTF-8
#模板文件位置
spring.thymeleaf.prefix=classpath:/templates/
#Content-Type配置
spring.thymeleaf.servlet.content-type=text/html
#模板文件后缀
spring.thymeleaf.suffix=.html

3.创建实体类和controller类

public class Book {
  private Integer id;
  private String name;
  private String author;
  //省略getter/setter
}
@Controller
public class BookController {
  @GetMapping("/books")
  public ModelAndView books() {
    List<Book> books = new ArrayList<>();
    Book b1 = new Book();
    b1.setId(1);
    b1.setAuthor("罗贯中");
    b1.setName("三国演义");
    Book b2 = new Book();
    b2.setId(2);
    b2.setAuthor("曹雪芹");
    b2.setName("红楼梦");
    books.add(b1);
    books.add(b2);
    ModelAndView mv = new ModelAndView();
    mv.addObject("books", books);
    mv.setViewName("books");
    return mv;
  }
}

4.html文件:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
  <meta charset="UTF-8">
  <title>图书列表</title>
</head>
<body>
<table border="1">
  <tr>
    <td>图书编号</td>
    <td>图书名称</td>
    <td>图书作者</td>
  </tr>
  <tr th:each="book:${books}">
    <td th:text="${book.id}"></td>
    <td th:text="${book.name}"></td>
    <td th:text="${book.author}"></td>
  </tr>
</table>
</body>
</html>

5.结果:

总结

以上所述是小编给大家介绍的SpringBoot整合Thymeleaf的方法,希望对大家有所帮助!

相关文章

  • springboot实现rabbitmq的队列初始化和绑定

    springboot实现rabbitmq的队列初始化和绑定

    这篇文章主要介绍了springboot实现rabbitmq的队列初始化和绑定,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • java中transient关键字用法分析

    java中transient关键字用法分析

    这篇文章主要介绍了java中transient关键字用法,以实例形式分析了java中transient关键字的功能及使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • Spring内置任务调度如何实现添加、取消与重置详解

    Spring内置任务调度如何实现添加、取消与重置详解

    任务调度是我们日常开发中经常会碰到的,下面这篇文章主要给大家介绍了关于Spring内置任务调度如何实现添加、取消与重置的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-10-10
  • IDEA创建Servlet编写HelloWorldServlet页面详细教程(图文并茂)

    IDEA创建Servlet编写HelloWorldServlet页面详细教程(图文并茂)

    在学习servlet过程中参考的教程是用eclipse完成的,而我在练习的过程中是使用IDEA的,在创建servlet程序时遇到了挺多困难,在此记录一下,这篇文章主要给大家介绍了关于IDEA创建Servlet编写HelloWorldServlet页面详细教程的相关资料,需要的朋友可以参考下
    2023-10-10
  • Mybatis-plus全局id生成策略详解

    Mybatis-plus全局id生成策略详解

    这篇文章主要介绍了Mybatis-plus全局id生成策略详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Mysql字段和java实体类属性类型匹配方式

    Mysql字段和java实体类属性类型匹配方式

    这篇文章主要介绍了Mysql字段和java实体类属性类型匹配方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 深入聊一聊springboot项目全局异常处理那些事儿

    深入聊一聊springboot项目全局异常处理那些事儿

    最近在做项目时需要对异常进行全局统一处理,所以下面这篇文章主要给大家介绍了关于springboot项目全局异常处理那些事儿,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-01-01
  • Java实现图片验证码具体代码

    Java实现图片验证码具体代码

    这篇文章主要为大家详细介绍了Java实现图片验证码具体代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • 详解如何使用maven生成可以执行的jar

    详解如何使用maven生成可以执行的jar

    这篇文章主要介绍了详解如何使用maven生成可以执行的jar,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • 使用maven命令安装jar包到本地仓库的方法步骤

    使用maven命令安装jar包到本地仓库的方法步骤

    这篇文章主要介绍了使用maven命令安装jar包到本地仓库的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06

最新评论