Struts2源码阅读(四)_Dispatcher&ConfigurationProvider续

来源:互联网 发布:修复注册表软件 编辑:程序博客网 时间:2024/05/16 19:18

接下来第三步:init_LegacyStrutsProperties()
调用的是调用的是LegacyPropertiesConfigurationProvider
通过比较前面DefaultPropertiesProvider与调用的是LegacyPropertiesConfigurationProvider.
发现DefaultPropertiesProvider继承自后者,但重写了register()方法,主要是生成PropertiesSetting的不同,前者是根据org/apache/struts2/default.properties
后者是根据struts.properties
我们展开register()中的Settings.getInstance(),最后是调用getDefaultInstance()

 

在2.1.6中去掉了第四步:init_ZeroConfiguration();
第五步是自定义的configProviders

 

第六步:init_FilterInitParameters

 

第七步:init_AliasStandardObjects,使用BeanSelectionProvider
这是将配置文件中定义的<bean>与实际的类相映射,就是注入bean的依赖关系,这部分以后有时候再研究Container
 
接下来是看怎样调用这些ConfigurationProviders
展开init_PreloadConfiguration()

 

展开DefaultConfiguration中的reloadContainer

 

http://qidaoxp.javaeye.com/blog/497052

原创粉丝点击