Spring学习(七)独立于BeanFactory基础之外的功能
(一)国际化:
Spring在国际化方面提供了良好的支持,ApplicationContext继承了org.springframework.context.MessageResource接口,使用getMessage()的各个方法来获取信息资源,从而是实现国际化的目的。
当ApplicationContext被加载的时候,它会自动查找定义在XML中定义的messageResource,spring约定这个bean必须被定义为messageSource。开发人员可以通过org.springframework.context.support.ResourcebundleMessageSource来取得国际化信息。
示例代码:
配置文件:
<!-- 在以下代码中定义了,定义了一个id为messageSource的Bean,
??? 这个Bean的来源是org.springframework.context.support.ResourceBundleMessageSource,设定Bean的basename
??? 为messages,意味着存放信息资源文件的文档的名称为messages.properties 或者 messages.class
???? -->
??? <bean id="messageSource" class="com.spring.event.LogListener"/>
(5)测试程序:
ApplicationContext context = new FileSystemXmlApplicationContext("classpath:config.xml");
??Log log = (Log)context.getBean("log");
??log.log("gf");
上述代码只是为了说明Spring的事件传递功能, 其实利用Spring 的AOP实现日志输出会更好。
?
?