Java国际化:
假设我们正在开发一个支持多国语言的Web应用程序,要求系统能够根据客户端的系统的语言类型返回对应的界面:英文的操作系统返回英文界面,而中文的操作系统则返回中文界面——这便是典型的i18n国际化问题。对于有国际化要求的应用系统,我们不能简单地采用硬编码的方式编写用户界面信息、报错信息等内容,而必须为这些需要国际化的信息进行特殊处理。简单来说,就是为每种语言提供一套相应的资源文件,并以规范化命名的方式保存在特定的目录中,由系统自动根据客户端语言选择适合的资源文件。
SpringMVC国际化:
Spring MVC的国际化是建立在Java国际化的基础之上的,其一样也是通过提供不同国家/语言环境的消息资源,然后通过 Resource Bundle加载指定 Locale对应的资源文件,再取得该资源文件中指定key对应的消息。这整个过程与Java程序的国际化完全相同,只是 Spring MVC框架对Java程序国际化进行了进一步的封装,从而简化了应用程序的国际化。
国家化两步走:
1:显示国际化:即web页面能够根据浏览器的语言选择显示对应语言的操作界面。(本文章主要介绍)。
2:输出国际化:后台能够根据不同语言的选择返回对应的输出。在 Controller的处理方法中输出国际化消息,需要使用 org.springframework.web.servlet.support Requestcontext的getMessage()方法来完成。
显示国际化步骤:
- 准备配置文件,准备message_zh_CN.properties与message_en_US.properties配置文件。
配置文件为:
其中message_zh_CN.properties里中文并不支持,需要转换成Unicode编码方式(使用native2ascii编码)。