gpt4 book ai didi

java - 在 Struts 2.x 中使用自定义资源包/属性扩展库

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:32:21 26 4
gpt4 key购买 nike

各位,

目前,我们在 Struts 2.x 中使用一组标准属性文件来提供我们的 I18N 功能——并且在大多数情况下,这些文件完全符合我们的需要。但是,在某些情况下,能够让单个属性引用资源包中的其他属性会很棒,例如:

name.first=John
name.last=Doe
name.full={name.first} {name.last}

我知道 java.util.Properties 的几个扩展提供了这些类型的功能,例如:

我想知道是否有人曾尝试以某种方式将这些集成到 Struts 2.x 中 - 是否有可能覆盖处理资源包解析的机制?

最佳答案

没有像这个内置的东西,但是您可以通过 IIRC 设置文本提供程序:

<bean type="com.opensymphony.xwork2.TextProvider" name="struts"
class="com.opensymphony.xwork2.TextProviderSupport" scope="default" />

我从来没有真正做过这个,但这是一个有值(value)的、有趣的实验。

属性可能包含任意 OGNL,但是您可以同时(详细地)伪造它:

name.first=John
name.last=Doe
name.full=%{getText('name.first')} %{getText('name.last')}

(您也可以使用 ${...},但我更喜欢 %{...} 所以很明显它是 OGNL。)

我已将这个问题加入书签以供研究,这里有几个很酷的想法。

关于java - 在 Struts 2.x 中使用自定义资源包/属性扩展库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12314218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com