我正在学习春天。我尝试在 ResourceBundleMessageSource 下使用,这是我尝试的示例。
主应用
public class MainApp {
public static void main(String arg[]){
ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml");
String text = context.getMessage("s.wish",
new Object[] {"saro", "stanes" },
Locale.ENGLISH);
System.out.println("English... " + text);
String text2 = context.getMessage("s.wish",
new Object[] {"saro", "stanes" },
Locale.FRANCE);
System.out.println("French... " + text2);
}
}
豆类.xml
<!-- resource bundle -->
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource ">
<property name="basename" value="resources/locale/messages"/>
</bean>
messages_en_US.properties
s.wish=good morning, name : {0}, school : {1}
messages_fr_FR.properties
s.wish=bonjour, name : {0}, school : {1}
输出:
English... good morning, name : saro, school : stanes
French... bonjour, name : saro, school : stanes
从文档中我了解到 ReloadableResourceBundleMessageSource 比 ResourceBundleMessageSource 先进得多。
1)不限于单独读取.properties文件,也可以读取xml属性文件。
2)它不仅限于从类路径读取文件,而是从任何位置读取文件。
“cacheSeconds”的概念是什么
class="org.springframework.context.support.ReloadableResourceBundleMessageSource ">
<property name="basename" value="resources/locale/messages"/>
<property name="cacheSeconds" value="3600"/>
</bean>
任何人都可以简要介绍一下或帮助我举一个例子来更好地理解。