首先,建立一个描述message的XML文件,名为messages.xml
<?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.ReloadableResourceBundleMessageSource"> <property name="basenames">
<list>
<value>org/rjstudio/spring/properties/messages</value>
</list>
</property>
</bean>
</beans>
这个Bean的id是定死的,只能为“messageSource”。这里的Class需要填入MessageSource接口的实现。其中,在我看的书中只提及了两个类,一个是:ResourceBundleMessageSource,另一个则是 ReloadableResourceBundleMessageSource。其中,后者提供了无需重启就可重新加载新配置的特性。
list节点的value子节点中的body值“org/rjstudio/spring/properties/messages”,是指 org.rjstudio.spring.proerties包下的以messages为主要名称的properties文件。比如说,以Locale为 zh_CN为例,Spring会自动在类路径中在org.rjstudio.spring.properties包下按照如下顺序搜寻配置文件并进行加载:
接下来,让我们在org.rjstudio.spring.properties下,建立两个messages的属性文件。一个名为 messages_zh_CN.properties,另一个为messages_en_US.properties,分别对应国际化中的中国和美国。
在这两个属性文件中分别建立一个userinfo属性。
中国为:userinfo=当前登陆用户[{0}] 登陆时间[{1}]
美国为:userinfo=current login user:[{0}] login time:[{1}]
好了,一切就绪,接下来可以写段代码来测试了。。建个类,写个测试Main方法。
public class MessageTest {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("messages.xml");
Object[] arg = new Object[] { "Erica", Calendar.getInstance().getTime() };
String msg = ctx.getMessage("userinfo", arg,Locale.CHINA);
System.out.println("Message is ===> " + msg);
}
}
最后输出的结果是:Message is ===> 当前登录用户:[Erica] 登录时间:[07-6-8 上午10:20]
ctx.getMessage("userinfo", arg,Locale.getDefault());这个方法,传入的三个参数,第一个是properties文件中对应的名。arg为一个对象数组,我们在properties里面放置了两个变量,[{0}]和[{1}],Spring会为我们给它们赋值。而最后则需要传入一个Local。这里用 Locale.CHINA代表中国。如果我们用Locale.US,则输出会变为:
Message is ===> current login user:[Erica] login time:[6/8/07 10:59 AM]
OK,到这里,就到这里。
分享到:
相关推荐
在Spring框架中,实现国际化(Internationalization,简称i18n)是常见的需求,它使得应用程序可以根据用户所在的地区提供不同的语言版本。以下是一个详细的步骤,解释如何在Spring应用中实现国际化。 1. **理解...
在这个例子中,我们将深入探讨如何在Struts2框架中结合Spring和Hibernate实现国际化。 首先,我们需要了解Struts2的国际化配置。这通常涉及到创建资源文件,如`messages.properties`和`messages_zh_CN.properties`...
至于"Spring中文开发指南.pdf"文件,这通常是一份详尽的Spring MVC中文教程,涵盖了从基础概念到高级特性的全方位指导,包括依赖注入、数据绑定、异常处理、国际化、上传下载等功能。通过阅读这份指南,开发者可以更...
在"ActiveMQ,Spring的简单例子"中,我们将探讨如何将Spring与ActiveMQ集成,利用`JMSTemplate`来发送和接收消息。 首先,我们需要在项目中引入ActiveMQ的相关依赖。这通常通过Maven或Gradle的配置完成,添加...
首先,我们需要了解Spring MVC中实现国际化的基本步骤: 1. **配置资源文件**: - 在项目中创建`src/main/resources`目录下的`messages.properties`(默认语言,如英语)和`messages_zh_CN.properties`(中文)等...
在本项目"spring+websocket+hibernate小例子"中,开发者通过集成Spring框架、WebSocket技术和Hibernate ORM,创建了一个小型的交互式应用。这个应用能够实现实时通信,并且能够与数据库进行数据交互,展示了现代Web...
在这个简单的例子中,我们看到了Spring和CXF如何协同工作,提供了一种高效且灵活的方式来创建和部署Web服务。通过Spring的自动化配置和CXF的Web服务支持,开发人员可以专注于业务逻辑,而不是底层的基础设施。 注意...
- 在Spring的配置文件(如`applicationContext.xml`)中引入JMS相关的XML命名空间: ```xml xmlns:jms="http://www.springframework.org/schema/jms" xsi:schemaLocation=...
3.8.4. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.9.1. 使用Singleton-helper类 4. 资源 4.1. 简介 4.2. Resource 接口 4.3. 内置 Resource 实现 4.3.1. UrlResource 4.3.2. Class...
在这个"spring-jms使用queue发送消息简单例子"中,我们将深入探讨如何使用Spring JMS与ActiveMQ结合,通过队列(Queue)来发送和接收消息。 首先,`pom.xml`文件是Maven项目的配置文件,它包含了项目所依赖的库。...
在登录例子中,Flex4 可能被用来设计登录表单,包括输入框、按钮等元素,并处理用户的交互事件,如点击登录按钮时的验证和数据提交。 2. Spring: Spring 是一个广泛使用的Java后端框架,用于处理业务逻辑和服务层...
3. **配置Spring**:在Spring的配置文件(如applicationContext.xml)中,你需要配置JMS相关的bean,包括连接工厂、目的地(Queue或Topic)以及消息监听容器。例如: ```xml ...
【标题】"超级简单Spring3 Quartz 例子" 涉及到的是在Spring框架中集成Quartz定时任务库的一个基础教程。Quartz是Java平台上广泛使用的开源任务调度库,能够帮助开发者实现定时任务的创建、管理和执行。Spring框架则...
在这个"一个spring的helloworld例子加源码"中,我们将深入理解Spring框架的基础,以及如何通过实际的"firstspring"项目来启动一个简单的应用。 首先,让我们了解一下Spring框架的核心概念。Spring的主要目标是简化...
在本文中,我们将深入探讨"最简单的Spring Demo",这是一个基于Spring框架的入门级实例,旨在帮助初学者快速理解Spring的核心概念。Spring是Java企业级应用开发中的一个关键框架,它提供了一整套服务,包括依赖注入...
在这个例子中,可能会有一个简单的 `HelloWorld` 类被声明为一个 bean。 2. **Bean 定义**:在配置文件中,会有一个 `<bean>` 元素,可能包含类名、初始化方法、属性等信息,比如 `...
- **配置JavaMailSender**: 首先,我们需要在Spring的配置文件中(如applicationContext.xml)或者通过Java配置类来配置JavaMailSenderImpl,包括设置邮件服务器信息、认证信息等。 - **创建SimpleMailMessage对象**...
3.8.5. ApplicationContext在WEB应用中的实例化 3.9. 粘合代码和可怕的singleton 3.10. 以J2EE RAR文件的形式部署Spring ApplicationContext 3.11. 基于注解(Annotation-based)的配置 3.11.1. @Autowired ...
在IT行业中,Spring框架是Java开发中的一个核心组件,它为构建高质量的、可维护的、松耦合的应用程序提供...通过这种方式,开发者可以轻松地在Spring应用中实现邮件功能,无论是简单的文本邮件还是包含附件的复杂邮件。
在Spring的配置文件(如`applicationContext.xml`)中,我们可以通过`<bean>`标签创建一个连接工厂(ConnectionFactory),并指定ActiveMQ服务器的URL: ```xml ``` 这里假设ActiveMQ服务器运行在本地且端口为...