web locale 问题

大家好 ,现在我的web 系统 没有应用 struts spring 等框架开发
完了 我想搞一下 国际化
使用 resouceBundle 但是 Locale 的获取 如何得到?
看到 httpservletRequest 有 getLocale()
想问一下 我的系统 如何 获取 locale

[code="java"]Locale.getDefault()[/code]

获得此 Java 虚拟机实例的当前默认语言环境值。
Java 虚拟机根据主机的环境在启动期间设置默认语言环境。如果没有明确地指定语言环境,则很多语言环境敏感的方法都使用该方法。可使用 setDefault 方法更改该值。

可以从httpservletRequest.getLocale() 得到
locale之后,把locale 放到session中,

[code="java"]Locale locale = Locale.getDefault();
ResourceBundle localResource = ResourceBundle.getBundle("ConnResource", locale);[/code]
http://www.cnblogs.com/daniel-shen/archive/2006/11/29/576313.html

1.获取操作系统locale Locale defultLocale=Locale.getDefault();
注: 服务器端调用得到的其实是服务器的locale

2.获取客户端浏览器设置的locale
Enumeration locales=request.getLocales();
while(locales.hasMoreElements())
{
Locale clientLocale=(Locale)locales.nextElement();

   out.println("客户端:"+clientLocale+"<br>");
   out.println("国别:"+clientLocale.getDisplayCountry()+"<br>");
   out.println("语言:"+clientLocale.getDisplayLanguage()+"<br>");

}

3.获取客户端用户设置的第一个locale
Locale first=request.getLocale();
注: 客户端有可能不会发locale给服务器端,这个时候你要判定一下,设置一个缺省的locale

4.通过客户端locale覆盖操作系统中的locale
Locale.setDefault(first);

5.读取资源文件的内容
ResourceBundle rb=ResourceBundle.getBundle("com.lujie.resources.lujie");
String name=rb.getString("jsp.name");
String pass=rb.getString("jsp.pass");
<%=name %>
<%=pass %>

6.将资源文件中的中文转换字符编码
先配置jdk的环境变量
然后再dos里面执行native2ascii

在JVM的System属性中:
[code="java"]System.getProperty("user.timezone");[/code]

我的是 Asia/Shanghai

[b]
应该是:[/b]
[code="java"]
System.getProperty("user.language");[/code]

swing 的话那就直接 调用 Locale 的下面方法,就能得到当前的语言

public static Locale getDefault()获得此 Java 虚拟机实例的当前默认语言环境值。
Java 虚拟机根据主机的环境在启动期间设置默认语言环境。如果没有明确地指定语言环境,则很多语言环境敏感的方法都使用该方法。可使用 setDefault 方法更改该值。

返回:
此 Java 虚拟机实例的默认语言环境。

使用 i18n,Java里面的资源文件叫做ResourceBundle,它分成两种,一种是ListResourceBundle,另一种是PropertyResourceBundle,

http://www.wangchao.net.cn/bbsdetail_29663.html 有代码的简单例子