MessageSource 相关解析
MessageSource 相关解析
Messagesource 接口源码
Messagesource
是用于解析消息(Message)的策略接口,支持对消息的参数化和国际化解析。(重点是参数化和国际化)
Spring 为生产提供了两个开箱即用的实现:
org.springframework.context.support.ResourceBundleMessageSource
:构建在标准的java.util.ResourceBundle
之上。因此也继承了java.util.ResourceBundle
的限制
ResourceBundle
的解析,参考 Java-ResourceBundle
org.springframework.context.support.ReloadableResourceBundleMessageSource
:高度可配置,特别是在重新加载消息方面。
主要实现类:
HierarchicalMessageSource:
AbstractMessageSource:
MessageSourceSupport:
参考《Java 中的格式化 -Format.md》的
MessageFormat
小节。看到这里,TODO
ResourceBundle:
参考
ResourceBundleMessageSource
尝试研究这个子类。TODO
ReloadableResourceBundleMessageSource
ApplicationContext
简单源码分析
生效原理,相关源码
实践
可配置项
basenmae 可以读取一大堆带区划放配置文件
通过 XML 进行配置
通过 Java 配置
SpringBoot 自动配置
请看《SpringBoot-MessageSource 自动配置类源码解析 -MessageSourceAutoConfiguration.md》
主要使用场景
Spring 表达式
看看其他人的博客