系统国际化1
对于稍微大一点的系统,国际化都是一个必须的步骤,很多系统为了不同的语言,做出了不同的页面甚至程序来支持,然后,对于.net或java相对成熟的平台下面,我们大可以利用已有的一些框架支持,来轻松的实现国际化的支持,下面我们以Spring为例子大致讲解一下如何利用已有框架简单的做到国际化的支持,我们简单的拿一个欢迎语句的中英文版本来做处理:
1、资源文件的编写:
英文版本资源文件,新建resource\user_en_US.properties,在资源文件中编写:
welcome.label=welcome {0} :time {1}
中文版本资源文件,新建resource\user_zh_CN.properties,在资源文件中编写:
welcome.label=欢迎你 {0} :时间 {1}
2、使用org.springframework.context.support.ResourceBundleMessageSource来配置messageSource(该名称为Spring约定):
/** * @return spring 上下文 */protected ApplicationContext getAppCtx(){return WebApplicationContextUtils.getWebApplicationContext(getSession().getServletContext());}/** * 获取资源信息 * @param key * @param args * @return */public String getText(BaseException e){String key = e.getKey();String msg = super.getText(key, null, e.getParams());//本身Action是否配置了错误信息,if(msg != null) return msg;return getAppCtx().getMessage(key, e.getParams(), key, getLocale());}