如何在java中获取语言环境对象?

时间:2011-06-17 07:48:40

标签: java

我正在使用Java框架Spring和Liferay。 有了liferay,我知道如何获得一个语言环境(有一些信息的对象:语言,国家......)但现在我在一个没有与liferay连接的java类中,我不知道如何获取一个语言环境对象语言。

例如,我在我的网页的测试类中有下一个方法:

private void checkEnglishText(String contentXml) {
    CarContentGenerator esCarGeneratorObject = new      CarContentGenerator();
    HashMap<String, CarContentVo> hm = esCarGeneratorObject.getCar(contentXml);
    CarContentVo ccvo = hm.get("EPPA0418");
    Assert.assertEquals(ccvo.getCarCodes(), "empress");
}

这里我调用CarContentGenerator构造函数,这个构造函数是它:

public CarContentGenerator() {
    link = new LinkVo();
    links = new ArrayList<LinkVo>();
    itinerary = new ArrayList<LinkVo>();
    lpackageId = new ArrayList<String>();
    contentVo = new ContentVo();
    mapCar = new HashMap<String, CarContentVo>();
    this.locale = "en_US";
}

如您所见,我将值“en_US”赋予变量locale。 “en_US”表示我的页面

将以英语显示,如果我写“es_ES”,它将以西班牙语显示,所以..我的应该

是..有谁知道如何查找语言(在我的情况下为“en_US”或“es_EN”),其中是我的

网页? (从请求或其他东西获取)

1 个答案:

答案 0 :(得分:4)

是一个java类java.lang.Locale,您可以通过以下代码获取via代码实例:

final Locale american = new Locale("en", "US");
final Locale spanish = new Locale("es", "ES");

因此,当您没有与Liferay的连接时,您应该能够将其用作语言环境对象。这些语言环境可以传递到支持区域设置敏感操作的各种JDK类(例如NumberFormatCurrency),也可以直接查询基本信息。

至于你的上一个问题 - 我认为目前的答案太广泛,没有更多信息。目前,这个问题只是“如何在”我的网页“和”我的代码“之间传达一些字节值的静态信息?”有几百种可能的方法可以做到这一点,其中最好的/最简单的方法取决于很多无聊的细节,比如你的启动脚本,哪些技术在不同的地方使用,等等。如果你需要更多的帮助,我相信你已经必须发表一个非常具体的问题,填补所有这些空白。