SpringBoot集成Thymeleaf前端模板

boyanx2个月前技术教程11

Thymeleaf是一个模板引擎。它是一个强大的模板引擎,可以处理HTML、XML、JavaScript、CSS等多种类型的模板。Thymeleaf可以与Spring MVC框架集成,以便在Web应用程序中使用模板。本文介绍一下与SpringBoot集成过程和案例。

首先配置依赖

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

配置模板信息

templates是模板文件存放位置,在resources资源路径下

.html 是模板文件后缀


@Configuration
public class ThymeleafConfig {
    Logger logger = LoggerFactory.getLogger(ThymeleafConfig.class);

    @Bean
    public SpringResourceTemplateResolver templateResolver() {
        SpringResourceTemplateResolver templateResolver = new SpringResourceTemplateResolver();
        templateResolver.setApplicationContext(applicationContext);
        //文件存储位置 
        templateResolver.setPrefix("classpath:/templates/");
        //模板文件后缀
        templateResolver.setSuffix(".html");
        templateResolver.setTemplateMode(TemplateMode.HTML);
        templateResolver.setCharacterEncoding("UTF-8");
        templateResolver.setCheckExistence(true);
        return templateResolver;
    }

    @Autowired
    private ApplicationContext applicationContext;
}

Controller写法

返回ModelAndView,跳转到指定页面

@RequestMapping("/userView")
public ModelAndView userView(Long userId) {
    logger.info("userView controller");
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.addObject("userEntity", helloBiz.getUser(userId));
    modelAndView.setViewName("user");
    return modelAndView;
}

通过addObject 存储一个键值对 key是userEntity ,value是一个用户实体

设置viewName是 user ,对应的模板为user.html

界面写法

界面文件路径为
/resources/templates/user.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
用户标识:<span class="author" th:text="${userEntity.userId}"></span>
用户名称:<span class="author" th:text="${userEntity.nickName}"></span>
</body>
</html>

模板语法参考官方文档,文档地址如下

官方文档:
https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html

看看效果


后面介绍如何集成LayUI,做个管理后台界面,喜欢请关注,不对的地方请指正

相关文章

httpclient+jsoup实现小说线上采集阅读

前言  用过老版本UC看小说的同学都知道,当年版权问题比较松懈,我们可以再UC搜索不同来源的小说,并且阅读,那么它是怎么做的呢?下面让我们自己实现一个小说线上采集阅读。(说明:仅用于技术学习、研究) ...

开源一套简单通用的后台管理系统(开源系统软件)

  前言  前段时间我们写一个简单的后台模板SpringBoot系列——Security + Layui实现一套权限管理后台模板< https://www.cnblogs.com/huanzi-...

基于Rust的后台管理系统(rust llvm后端)

功能特点基于X-admin开发,无缝对接layui前端框架,易于修改。X-Admin: http://x.xuebingsi.com/Layui: https://www.larryms.com/基于...

采用 Spring Boot + MyBatis搭建的绝美博客系统源码免费分享

Spring Boot 相对于传统的SSM框架的优点是提供了默认的样板化配置,简化了Spring应用的初始搭建过程,如果你不想被众多的xml配置文件困扰,可以考虑使用Spring Boot替代,今天小...

酷瓜云课堂(内网版)v1.0.6 发布,局域网在线学习平台

更新内容增加刷新 opcache 功能增加清理测试数据脚本首页轮播 + 课程合并为首页缓存强化文章 | 提问 | 课程列表参数检查优化课程学习时长同步优化排序条件,改善分页重复问题优化文件上传优化学员...

SpringBoot+MyBatis+Shiro框架开发的一套极简权限系统源码分享

项目源码获取方式:关注转发之后私信回复【源码】即可免费获取到!项目说明采用SpringBoot、MyBatis、Shiro框架,开发的一套权限系统,极低门槛,拿来即用。设计之初,就非常注重安全性,为企...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。