Thymeleaf#{property_name} - 通过>创建属性引用的文件; 1个模板

时间:2016-12-20 02:40:42

标签: java templates thymeleaf

我正在使用Thymeleaf并且需要多个模板中的属性值(不是常见的页眉或页脚)。

文档说,如果我们有a.html模板,则邮件会显示在a.propertiesa_en.properties中。

如果我有房产,请说:

test_property=This is a common message: {0}

我想在模板a.htmlb.html中使用。它进入了什么属性文件?我可以创建一个全局属性文件,还是可以配置Thymeleaf来加载全局属性文件?

我要通过这些文档:

http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#messages

似乎这会支持......

1 个答案:

答案 0 :(得分:1)

胸腺文档(Externalizing Messages)说:

  

Thymeleaf中外部化文本的位置是完全可配置的,这将取决于所使用的特定org.thymeleaf.messageresolver.IMessageResolver实现。通常,将使用基于.properties文件的实现,但是如果我们想从数据库中获取消息,则可以创建自己的实现。

因此,您可以使用以下方式之一:

1。。为org.thymeleaf.messageresolver.IMessageResolver界面创建自定义实现。
参考StandardMessageResolver

2。。Thymeleaf使用OGNL作为默认值。根据{{​​3}}:

  

您可以使用@ class @ field语法引用静态字段。该课程必须完全合格。

因此,创建一个包含这些静态字符串消息的JAVA类,然后在百里香模板中调用它们:

th:text="${@com.example.yourpackagename.Constants@STRING_KEY}"

3。。如果您使用的是spring / spring boot,则只需使用位于 resources 文件夹中的message.properties文件。

4。。创建一个使用所需消息的片段html页面,然后在模板中调用此片段,然后使用.properties文件(在同一文件夹作为片段文件)。