1
6
我认为这是resourcebundles设计的一个基本缺陷:引用其他键的键会自动违反dry(不要重复自己)原则。我解决这个问题的方法与您的方法类似:创建一个reflecturesourcebundle类,该类允许您使用el表示法在消息中指定资源键。 错误的方式:
正确的方式:
我已经 uploaded the code to GitHub 所以你或者其他人可以下载它。此外,我还为使用Stripes框架的任何人添加了一些示例代码( http://www.stripesframework.org/ )让你快点起来跑。 让它与标准jstl fmt标记库一起工作的诀窍是设置一个拦截器,用我们自己的资源替换httpservletrequest的资源。代码如下所示:
请查看上面链接中的stripes.interceptor包以了解更多详细信息。 |
2
0
如果字符串重复是本地化的,因为您知道某个字符串将重复,但只在同一个项目中重复,这样共享资源包就不是设计上的噩梦,那么您可以考虑将字符串分解为多个键值部分。将重复的部分与不重复的部分分开,并重复使用重复的部分。例如,假设需要显示以下两个字符串:
资源包可以如下:
然后根据需要组合所需的零件
不过,有一点需要注意,像主谓顺序等语法规则在所有语言中可能并不相同。所以你在分句的时候要小心一点。 |