相信对于Spring的国际化资源的使用并不陌生。如果大家忘记了如何使用的话,可以查看博主关于Spring的讲解。在Spring的源码的分析中,我们是基于会使用Spring的基础上的,所以这里我们最关心的是某个功能,Spring的源码是如何实现的。
Spring定义了访问国际化信息的MessageSource接口,并提供了几个易用的实现类。我们可以来看一下MessageSource类图结构。有兴趣的读者可以自己对照源码去了解。(相关资源可到这里下载:http://pan.baidu.com/s/1sjSo9a9)
我们在定义了国际化的资源后,Spring的源码就会去调用initMessageSource函数,那么这个函数是怎样执行的呢?我们先来看一张时序图。
通过上面的时序图,我们可以知道,其实国际化资源的处理就是在AbstractApplicationContext的类中。具体的实现函数如下。
/**
*