`
zhukang0725
  • 浏览: 15344 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Spring中ApplicationContext对国际化的支持

阅读更多
我们说ApplicationContext是BeanFactory的超级,主要表现在,Application为我们提供了更多的功能,主要包括国际化支持,资源访问和事件传递等功能。下面我们对ApplicationContext的国际化的支持进行学习。
ApplicationContext继承了org.springframework.context.MessageResource接口,通过getMessage();方法能取得多种信息资源。下面是getMessage()的三个方法:
String getMessage(String code,Object[]args,String default,Local loc);
String getMessage(String code,Object[]args,Local loc);
String getMessage(MessageSourceResolvable,Local loc);
下面我们看一下一个例子:

   <?xml version="1.0" encoding="UTF-8"?> 
   <!DOCTYPE beans Public "-//SPRING//DTD BEAN//EN" 
   "http://www.springframework.org/dtd/spring-beans.dtd"> 
   <beans> 
   <bean id ="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename">
<value>message</value>
</property>
</bean>
   <bean id ="HelloWorld" class="com.jnotnull.HelloWorld"> 
   <bean> 
   </beans> 

在这里我们定义一个bean,并且定义了basename的属性,属性值为message.这样我们在建资源文件的时候文件名就必须是message了,后缀名各不相同了。
下面我们用建立message.properties文件
输入
HelloWorld={0},现在是{1};
在这里要用要对上面的汉字进行转码,这个有第三方的插件,不然会产生乱码。
下面我们再写一个测试类:

package com.jnotnull;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import java.util.Date;

public class Test {
public static void main(String []args){
ApplicationContext context = new FileSystemXmlApplicationContext("config.xml");
                Object[] objects = new Object[]{"HelloWorld",new Date()};
String message= context.getMessage("HelloWorld",objects,Locale.CHINA);
System.out.println(message);
}
}


这样就输出了结果;
同时我们还可以创建另一个资源文件message_en_US.properties文件
HelloWorld={0},now is{1}
将上面的代码
String message= context.getMessage("HelloWorld",objects,Locale.CHINA);
改为
String message= context.getMessage("HelloWorld",objects,Locale.US);
这样就得到了国际化的处理;
还是很方便的;
分享到:
评论

相关推荐

    JSP Spring ApplicationContext的国际化支持

    主要介绍了JSP Spring ApplicationContext的国际化支持的相关资料,需要的朋友可以参考下

    Spring开发指南

    国际化支持 WebWork2 & Spring Quick Start WebWork 高级特性 Action 驱动模式 XWork 拦截器体系 输入校验 国际化支持 Webwork2 in Spring Struts in Spring 数据持久层 事务管理 持久层封装 JDBC ...

    Spring中文帮助文档

    3.8.2. 利用MessageSource实现国际化 3.8.3. 事件 3.8.4. 底层资源的访问 3.8.5. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.10. 以J2EE RAR文件的形式部署Spring ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    3.8.1. 利用MessageSource实现国际化 3.8.2. 事件 3.8.3. 底层资源的访问 3.8.4. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.9.1. 使用Singleton-helper类 4. 资源 4.1. 简介 4.2. ...

    spring jar 包详解

    包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、 XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。 (13) spring-mock.jar 这个jar文件包含...

    Spring的IoC容器(《Spring揭秘》的精选版)

    迷你书是《Spring揭秘》的精选版,节选...5.2 国际化信息支持 5.3 容器内部事件发布 5.4 多配置模块加载的简化 5.5 小结 Spring IoC容器之扩展篇 6.1 Spring 2.5的基于注解的依赖注入 6.2 Spring 3.0展望 6.3 小结

    spring4.3.9相关jar包

    spring-aspects.jar :提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中,比如Eclipse AJDT。 spring-context-support.jar:Spring context的扩展支持,用于MVC方面。 spring-expression.jar:...

    spring4.1核心包

    包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。 19. spring-webmvc-portlet-4.1.1.RELEASE....

    最新最全的spring开发包

    包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、 XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。 (13) spring-mock.jar  这个jar文件...

    Spring 2.5 jar 所有开发包及完整文档及项目开发实例

    包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、 XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。 (13) spring-mock.jar  这个jar文件包含...

    Spring 2.0 开发参考手册

    3.8.1. 利用MessageSource实现国际化 3.8.2. 事件 3.8.3. 底层资源的访问 3.8.4. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.9.1. 使用Singleton-helper类 4. 资源 4.1. 简介 ...

    Spring API

    3.8.2. 利用MessageSource实现国际化 3.8.3. 事件 3.8.4. 底层资源的访问 3.8.5. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.10. 以J2EE RAR文件的形式部署Spring ...

    spring chm文档

    3.8.1. 利用MessageSource实现国际化 3.8.2. 事件 3.8.3. 底层资源的访问 3.8.4. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.9.1. 使用Singleton-helper类 4. 资源 4.1. 简介 ...

    Spring.3.x企业应用开发实战(完整版).part2

    13.5 Spring对JDK 5.0 Executor的支持 13.5.1 了解JDK 5.0的Executor 13.5.2 Spring对Executor所提供的抽象 13.6 实际应用中的任务调度 13.6.1 如何产生任务 13.6.2 任务调度对应用程序集群的影响 13.6.3 任务调度云...

    SpringMVC实例

    5、国际化支持,Spring的ApplicationContext提供了对国际化的支持,在这里可以很方便的使用。 6、面向接口编程,其实这不仅是springMVC的特点,整个Spring来看,这个特点都是很明显的,因为它使开发人员对程序易于...

    Spring3.x企业应用开发实战(完整版) part1

    13.5 Spring对JDK 5.0 Executor的支持 13.5.1 了解JDK 5.0的Executor 13.5.2 Spring对Executor所提供的抽象 13.6 实际应用中的任务调度 13.6.1 如何产生任务 13.6.2 任务调度对应用程序集群的影响 13.6.3 任务调度云...

    2011 经典 下载 spring中文教程(spring开发指南).pdf

    国际化支持............................................................................................................62 数据持久层.......................................................................

Global site tag (gtag.js) - Google Analytics