我有一个字符串列表-这是我感兴趣的属性名称:我想连接这些字符串的值,但不使用属性名称,而是使用它们的属性值。我看到起始点是#strings.listJoin-但是我怎么说才能将列表中的元素与属性文件中的值相匹配呢?该清单将是:[name, address],在属性文件中,我有:
#strings.listJoin
[name, address]
name=stg address=another something
我想获得字符串:stg, another something
stg, another something
pgky5nke1#
您可以通过使用#messages.listMsg和#strings.listJoin来实现从@Controller返回模型:
#messages.listMsg
model.addAttribute("messageKeyList", Lists.newArrayList("name", "address"));
您可以加入翻译的消息列表,如下所示:
<div th:text="${#strings.listJoin(#messages.listMsg(messageKeyList), ',')}"></div>
这应该会产生您所期望的结果,例如:
Some name,Some address
其中姓名和地址是消息文件中的关键字。
n9vozmp42#
如果您使用本地化,#messages.listMsg 部分将尝试翻译列表中的每个字符串,导致@Oleksii在上面的评论中提到的内容。如果你只想按原样打印字符串,使用这个:
<div th:text="${#strings.listJoin(messageKeyList, ',')}"></div>
2条答案
按热度按时间pgky5nke1#
您可以通过使用
#messages.listMsg
和#strings.listJoin
来实现从@Controller返回模型:
您可以加入翻译的消息列表,如下所示:
这应该会产生您所期望的结果,例如:
其中姓名和地址是消息文件中的关键字。
n9vozmp42#
如果您使用本地化,#messages.listMsg 部分将尝试翻译列表中的每个字符串,导致@Oleksii在上面的评论中提到的内容。如果你只想按原样打印字符串,使用这个: