spring中的ResourceBundleMessageSourc

1 首先创建两个资源文件
messages_en_US.properties

customer.name=Yong Mook Kim, age : {0}, URL : {1} 

messages_zh_CN.properties

  customer.name=\ufeff\u6768\u6728\u91d1, age : {0}, URL : {1} 

2 bean文件的设置

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans   
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  

    <bean id="messageSource"  
        class="org.springframework.context.support.ResourceBundleMessageSource">  
        <property name="basename">  
            <value>locale\customer\messages</value>  
        </property>  
    </bean>  

</beans>  

其中basename指出了资源文件的位置

3 测试

public static void main(String[] args) {  

        ApplicationContext context   
            = new ClassPathXmlApplicationContext("locale.xml");  

        String name = context.getMessage("customer.name",   
                new Object[] { 28,"http://www.eeee.com" }, Locale.US);  

        System.out.println("Customer name (English) : " + name);  

        String namechinese = context.getMessage("customer.name",   
                new Object[] {28, "http://www.eeee.com" },   
                                        Locale.SIMPLIFIED_CHINESE);  

        System.out.println("Customer name (Chinese) : " + namechinese);  

    }  

4 另外一个ReloadableResourceBundleMessageSource,主要是用来定时刷新资源文件,可以不重启动

增加的属性为:  `<property name="cacheSeconds" value="3000" />` 

以秒为单位,如果-1表示用不刷新

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值