使用MessageSource来管理国际化的消息资源文件

spring的配置文件中,MessageSource的配置如下

<!-- 国际化的消息资源文件(一般系统中主要用于显示/错误消息定制) -->
    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basenames">
            <list>
                <!-- 在web环境中一定要定位到classpath 否则默认到当前web应用下找  -->
                <value>classpath:messages/messages</value>
                <value>classpath:messages/ValidationMessages</value>
            </list>
        </property>
        <property name="useCodeAsDefaultMessage" value="true"/>
        <property name="defaultEncoding" value="UTF-8"/>
        <!--<property name="cacheSeconds" value="60"/>-->
    </bean>

useCodeAsDefaultMessage:表示当配置文件中key对应的value为空时,是否使用key作为返回值,默认为false(当value为空时,抛出NoSuchMessageException);

defaultEncoding:默认编码格式;

cacheSeconds:刷新资源文件的周期,以秒为单位,默认值为-1,表示永不刷新;

题外话:ResourceBundleMessageSource和ReloadableResourceBundleMessageSource的唯一区别就是后者提供了定时刷新的属性。

猜你喜欢

转载自www.cnblogs.com/qinshuxiu/p/9392081.html