JSP Spring ApplicationContext的國際化支持
1.ApplicationContext接口繼承了MessageResource接口,因此使用ApplicationContext作為spring容器可以使用國際化資源文件。
2.在MessageResource接口中定義了兩個主要用于國際化的方法:
String getMessage(String param,Object[] args,Locale loc) ;
String getMessage(String param,Object[] args,String default,Locale loc) ;
ApplicationContext就是通過這兩個方法來完成國際化的
3.國際化支持原理:當程序創建ApplicationContext時,Spring會自動查找配置文件中名為messageSource的Bean實例,如果找到這個實例,上面兩個國際化方法的調用將會交給該Bean實例實現類;如果沒有找到,將會沿著父類一直往上找;如果最終還是沒找到,系統將會創建一個空的StaticMessageSource Bean,該Bean能接受上述兩個方法的調用,但是是空實現。
4.通常在Spring中使用ResourceBundleMessageSource類來配置messageSource Bean。配置該Bean時需要提供一個參數basenames指定所使用的國際化資源文件的基本名,該參數值為list類型,因此需要使用元素來提供參數值
bean name="messageSource" class="`org.springframework.context.support.ResourceBundleMessageSource">
property name="basenames">
list>
value>message/value>
/list>
/property>
/bean>
!--提供資源文件-->
//message_zh_CN.properties
welcome={0} . 歡迎光臨!現在是北京時間:{1}
//message_en_US.properties
welcome={0} , welcome! now is:{1}
!--在main程序中的調用-->
String name = act.getMessage("welcome",new String[]{"成兮”,new Date()},Locale.getDefault(Locale.Category.FORMAT)) ;
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:- Spring中BeanFactory和ApplicationContext的作用和區別(推薦)
- Spring IoC學習之ApplicationContext中refresh過程詳解
- SpringBoot獲取ApplicationContext的3種方式
- Spring主配置文件(applicationContext.xml) 導入約束詳解
- Spring通過ApplicationContext主動獲取bean的方法講解
- spring中通過ApplicationContext getBean獲取注入對象的方法實例
- 詳解Spring Boot的GenericApplicationContext使用教程
- Spring獲取ApplicationContext對象工具類的實現方法
- Spring MVC之WebApplicationContext_動力節點Java學院整理
- 詳解spring applicationContext.xml 配置文件
- 詳解Spring ApplicationContext加載過程