我有一个属性文件(键/值)对,我从当前读取一个键的值,并在UI中显示该值.
复杂性增加了,现在基于某些公式,价值更具动态性.该公式包含一个变量参数,其值I将在运行时获得.
是否有任何Java设计模式来设计此方案.
请让我知道你的建议
最佳答案
Is there any java design pattern to design this scenario .
我不知道是否有模式.
如果我理解你的问题,我可以解释我通常做的事情.
>在我的属性值中插入可本地化的字符串
我通常使用#number#
>稍后在解析变量时替换它
小例子:
messages.properties
name.of.key = sum of #0# + #1# = #2#
然后我从中读取值并将#num#替换为适当的值(注意:这里有相同的shortenes方法,但我使用外部替换方法):
public void printSum(int n1,int n2) {
String myString = messageSource("name.of.key",Locale.getDefault(),null,null));
myString.replace("#0#",String.valueOf(n1));
myString.replace("#1#",String.valueOf(n2));
myString.replace("#2#",String.valueOf(n1+n2));
System.out.println(myString);
}
OUTPUT printSum(1,2);
sum of 1 + 2 = 3