我是Python Django开发人员Java EE i18n和默认项目结构
我想尝试一点Java。
在Django我用来做我的翻译,因为它遵循:
from django.utils.translation import ugettext_lazy as _
,然后,如果在区域.po文件中指定的翻译/ EN/django.po文件
_("hello world")
问题1:Java中是否有类似的东西?
我发现那些:
但他们都不是我所期待的
我照例子
在import java.util.ResourceBundle;
import java.util.MissingResourceException;
public class i18n {
private static ResourceBundle myResources = ResourceBundle.getBundle("messages");
public static String _ (String originalStr) {
try {
return myResources.getString(originalStr);
} catch (MissingResourceException e) {
return originalStr;
}
}
}
后来
import static i18n._;
问题2:可是往哪里放messages.properties文件?
- 我想有一个单独的语言环境目录与这些文件。
- 从整个包和子包
- 区域/ messages_en_US.properties
- 区域/ messages_en_UK.properties
- 区域/ messages_en_AU.properties
- 等等...
翻译
问题3:这部分用Excep重捕没有效果,你知道为什么吗?
问题4:i18n是否有JavaEE标准?
我认为Java EE应该有一个标准化的应用程序目录布局,i18和战争目录内容,但几天与Java鬼混我觉得它非常混乱。因此,我能够在互联网上找到的每个示例开放源代码都是完全不同的。从Google Wave协议项目开始,以示例小应用程序结束。
问题5:JavaEE编码理念还是最佳实践?
我发现Strategy for Web Applications但开发人员似乎并不关心它。测试安置,同样的事情。每个人都有不同的地方。像模板中的SQL查询逻辑,WTF ...
有没有基于源代码自动生成.properties文件的方法?像http://www.gted.org/gettext_java_tutorial.htm哪一个(gettext或ResourceBundle)是行业标准? – 2011-03-27 23:19:33