SpringBoot集成Thymeleaf前端模板

boyanx3个月前技术教程15

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,做个管理后台界面,喜欢请关注,不对的地方请指正

相关文章

初学Java需要重视的10个知识点(学java需要掌握什么)

Java的知识点其实非常多,并且有些知识点比较难以理解,有时候我们自以为理解了某些内容,其实可能只是停留在表面上,没有理解其底层实现原理。纸上得来终觉浅,绝知此事要躬行。学习Java基础的时候,应该尽...

爆肝整理「450套大屏模板」(大屏幕素材图片)

一、整体介绍闲暇时间整理的大屏项目与模板,应该是 最全的开源大屏项目与模板的整理了!因为文件比较大,gitee有单个仓库500M的限制,就把项目文件放到了bai-du-yun了。每个项目文件夹,里面存...


10个最佳的开源免费的酒店系统,接私活创业拿来改改

大家好,我是Echa。酒店行业是一个多元化的行业,涵盖了为旅行者提供住宿、餐饮、娱乐和其他相关服务的各种企业和组织。这个行业的核心是为客人提供一个舒适的住宿环境,无论他们是出于商务、休闲还是其他原因而...

SpringBoot集成LayUI前端组件库(layui springboot)

现在大多数的WEB应用都是前后端分离,前端采用VUE,React等.但是今天我们介绍一个不用前后端分离的集成方案LayUI前端组件,作为纯后端开发我觉着上手还是挺简单的。LayUI是一套开源的Web...

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

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

Layui简单实现左侧菜单和Tab选项卡动态操作

<!DOCTYPE html> <html> <head> <meta charset="utf-8">...

发表评论    

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