我有一个属性文件(键/值)对,我从当前读取一个键的值,并在UI中显示该值.@H_403_2@
复杂性增加了,现在基于某些公式,价值更具动态性.该公式包含一个变量参数,其值I将在运行时获得.@H_403_2@
我想在针对一个键的属性文件中放置一个方法名称.@H_403_2@
现在我将读取密钥并获取方法名称.此方法将计算该特定键的值.@H_403_2@
请让我知道你的建议@H_403_2@
最佳答案
Is there any java design pattern to design this scenario .@H_403_2@
我不知道是否有模式.@H_403_2@
如果我理解你的问题,我可以解释我通常做的事情.@H_403_2@
>在我的属性值中插入可本地化的字符串
我通常使用#number#
>稍后在解析变量时替换它@H_403_2@
小例子:@H_403_2@
messages.properties@H_403_2@
@H_403_2@
name.of.key = sum of #0# + #1# = #2#
然后我从中读取值并将#num#替换为适当的值(注意:这里有相同的shortenes方法,但我使用外部替换方法):@H_403_2@
@H_403_2@
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);@H_403_2@
@H_403_2@
sum of 1 + 2 = 3