SSH/SSM项目中如何集成thymeleaf

教程分享 > Java教程 > Thymeleaf (1869) 2024-08-06 15:10:59

      SSH/SSM项目中如何集成thymeleaf?本文将讲解SSH/SSM项目中如何集成thymeleaf模板引擎。为啥要用thymeleaf模板引擎呢?相信用过的小伙伴都知道使用它之后和前端打交道是否更容易了呢?接下来进入正题吧。
 

1.添加必须依赖

<!--视图模板引擎-->
<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf</artifactId>
    <version>2.1.6.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf-spring4</artifactId>
    <version>2.1.6.RELEASE</version>
</dependency>

注意:如果是用3.X版本需要引入

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.6.0</version>
</dependency>

版本大于2.5.0如果当前项目因其他依赖关系则放弃3.x使用2.x即可不依赖该库


2.配置

SSH/SSM项目一般都有spring mvc的配置。修改spring mvc配置文件。添加以下内容

<!--定义视图模板引擎-->
<!--org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver-->
<!--org.thymeleaf.templateresolver.ServletContextTemplateResolver-->
<bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver">
    <property name="prefix" value="/WEB-INF/templates/"/>
    <property name="suffix" value=".htm"/>
    <property name="templateMode" value="HTML5"/>
    <property name="cacheable" value="false"/><!-- 缓存-->
    <property name="characterEncoding" value="UTF-8"/><!--解决中文乱码-->
</bean>
<bean id="templateEngine"
      class="org.thymeleaf.spring4.SpringTemplateEngine">
    <property name="templateResolver" ref="templateResolver"/>
</bean>
<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
    <property name="templateEngine" ref="templateEngine"/>
    <property name="order" value="2"/>
    <property name="viewNames" value="*_th"/>
    <property name="characterEncoding" value="UTF-8"/><!--解决中文乱码-->
</bean>

注意,order必须小于JSP的大小默认不设置即可。设置一定要注意否则各种404问题。

上面使用htm作为后缀是因为老项目将HTML后缀做过特殊统一处理。这里所以放弃HTML使用htm

添加layout扩展插件

1.添加依赖
 

<dependency>
    <groupId>nz.net.ultraq.thymeleaf</groupId>
    <artifactId>thymeleaf-layout-dialect</artifactId>
    <version>1.4.0</version>
</dependency>

2.修改spring mvc配置

<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
    <property name="templateEngine" ref="templateEngine"/>
    <property name="order" value="2"/>
    <property name="viewNames" value="*_th"/>
    <property name="characterEncoding" value="UTF-8"/><!--解决中文乱码-->
</bean>

 

https://www.leftso.com/article/418.html

相关文章
SSH/SSM项目中如何集成thymeleaf?本文将讲解SSH/SSM项目中如何集成thymeleaf模板引擎
Thymeleaf 递归,Thymeleaf模板引擎递归展示如评论留言等场合适用
使用thymeleaf 模板创建时间 使用thymeleaf 创建指定日期为:2023-10-18 #dates.create(2023,10,18) 使用thymeleaf ...
thymeleaf 设置不校验html标签
本文说一下在thymeleaf模板引擎中,如何给 textarea 赋值
thymeleaf模板 报错信息:​​​​​​​org.thymeleaf.exceptions.TemplateInputException: Error resolving template...
环境Thymeleaf 3.0循环5次需求:输出5个li编码参考:&lt;ul&gtl; &lt;li th:each="index:${#numbers.sequence(1,
springboot 使用thymeleaf 模板引擎中url中的&引起的org.xml.sax.SAXParseException: 对实体 "uid" 的引用必须以 ';' 分隔符结尾。问题解决
设置数据源将数据写入到 Model 中 @RequestMapping("/menulist") public String MenuManagerList(M
配置在resources目录下面创建i18n目录,然后创建几个文件messages.properties 默认显示语言内容messages_en_US.prop