如果这是一个有点主观/讨论类型的问题,我提前道歉。我想要的是向主要是 JSP 的 Web 应用程序改进区域设置信息的好方法。该框架...根本不存在,只是大量带有大量脚本和 JavaScript 的 .jsp 页面。我刚刚开始,所以我还不能建议彻底修改,尽管我想我会在某个时候解决这个问题。
现在,团队中的某人建议使用浏览器区域设置或类似的方式进行一些“简单”基于 javascript 的内容本地化。这在我的脑海中引发了各种警报。
但是通过 JSP 页面使用 Java Locale 支持的好方法是什么,然后可以轻松扩展到像 JSF 2 这样的优秀框架?
这就是我的想法:
- 将所有可能的显示字符串移至 *_locale.properties 文件
- 构建一个实用程序类,根据请求/ session 中的区域设置信息从正确的文件中读取
- 在所有 jsp 文件中嵌入所述实用程序类
- 将所有 <title>Page 1</title> 替换为 <title>localeUtils.getString("page1.title)</title>
建议?
最佳答案
如果您无法立即迁移到支持开箱即用本地化的框架(这里想到 Spring),那么您将必须提出自己的解决方案,而您提供的解决方案似乎是一个良好的开始。一定要使用属性文件来存储特定于区域设置的字符串并使用 supported Java locale IDs在每个特定于区域设置的属性文件的名称中。
关于java - 事后添加 i18n 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5083329/