您的位置:首页 > 其它

07年8月22日的学习收获

2007-12-03 11:03 225 查看
今天没什么事,便翻看起<<Java web开发详解>>,感觉甚爽,收获虽小,但实用性强,我相信以后做web开发时,一定会用到.
今天的学习收获有两点
1,利用Filter结合HttpServletRequestWrapper,HttpServletResponseWrapper类可以将请求和响应字符串替换掉.
原来只知道HttpServletRequest和HttpServletResponse都有一个包装类,但没有看到过实际运用,所以对这两个类有点生疏,现在不这么认为了,加上前段日子,看了Wrapper Pattern的详解,现在对HttpServletRequestWrapper,HttpServletResponseWrapper两个类,已经很喜欢了..哈....

2.对国际化与本地化有更深的理解与运用
国际化,又称I18N,因为国际化的英文是Internationalization,它以I开头,以N结尾,中间共18个字母.
本地化,又称L10N,因为本地化的英文是Localization.

在java.util包中提供了一个Locale类,它就是用来提供本地信息的,通常称它为语言环境.
Locale类常用的构造函数如下:
public Locale(String language)
public Locale(String language,String country)
language表示语言,它的取值是由ISO-639定义的小写的,两个字母组成的语言代码.
country表示国家和地区,它的取值是由ISO-3166定义的大写的,两个字母组成的代码.

常用ISO-639语言代码
语言 代码
汉语(Chinese) zh
英语(English) en
德语(German) de
法语(French) fr
日语(Japanses) ja
朝鲜语(Korean) ko

常用ISO-3166国家和地区代码
国家(地区) 代码
中国(China) CN
美国(United States) US
英国(Great Britain) GB
加拿大(Canada) CA
德国(Germany) DE
日本(Japan) JP
韩国(Korea) KR
台湾(Taiwan) TW
香港(HongKong) HK

java.util.ResourceBundle根据Locale对象,去获取相应的资源包.
public static final ResourceBundle getBundle(String baseName)
public static final ResourceBundle getBundle(String baseName,Locale locale)
public final String getS tring(String key)

例:有一资源包名为: MyResource_zh_CN.properties
利用以下代码获取资源包内容.
Java代码示例:
Locale locale=new Locale("zh","CN");
ResourceBundle bundle=ResourceBundle.getBundle("MyResource",locale);
bundle.getString(key1);
bundle.getString(key2);

再例:有一资源包名为: MyResource_zh.properties
此时以下任何一个Locale对象都可以获取该资源包内容.
Locale locale=new Locale("zh");
Locale locale=new Locale("zh","CN");
Locale locale=new Locale("zh","HK");
Locale locale=new Locale("zh","TW");

当使用new Locale("zh");去获取资源包时,直接查找文件名(不包括扩展名)以_zh结尾的资源包.
当使用new Locale("zh","CN");去获取资源包时,先去查找文件名(不包括扩展名)以_zh_CN结尾的资源包,如果没有找到则去查找文件名(不包括扩展名)以_zh结尾的资源包.
如果没有找到资源包则抛出: java.util.MissingResourceException
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: