您的位置:首页 > 编程语言 > Java开发

Struts2源码浅析-ConfigurationProvider

2016-01-16 12:20 519 查看
ConfigurationProvider接口 主要完成struts配置文件 加载 注册过程

ConfigurationProvider接口定义

[java] view plaincopyprint?

public interface ConfigurationProvider extends ContainerProvider, PackageProvider {

}

ContainerProvider接口定义

[java] view plaincopyprint?

/**

* 容器加载 注册器

*/

public interface ContainerProvider {

public void destroy();

/**

* 初始化阶段调用

* XmlConfigurationProvider#init为具体实现 主要加载xml 生成Document对象

*/

public void init(Configuration configuration) throws ConfigurationException;

/**

* 根据xml常量 设置是否支持reload

*/

public boolean needsReload();

/**

* 解析 注册bean,struts常量到容器ContainerBuilder

*/

public void register(ContainerBuilder builder, LocatableProperties props) throws ConfigurationException;

}

PackageProvider接口定义

[java] view plaincopyprint?

/**

* package节点加载 解析器

* 加载 解析xml文件配置的package节点

* @since 2.1

*/

public interface PackageProvider {

/**

* 初始化阶段调用

* XmlConfigurationProvider#init为具体实现 主要加载xml 生成Document对象

*/

public void init(Configuration configuration) throws ConfigurationException;

/**

* 根据xml常量 设置是否支持reload

*/

public boolean needsReload();

/**

* 加载 解析 xml文件中定义的package节点 创建PackageConfig对象

*/

public void loadPackages() throws ConfigurationException;

}



StrutsXmlConfigurationProvider:struts 相关xml 加载解析

BeanSelectionProvider:根据struts常量配置 初始化与其他框架整合用到的类 例如xml中配置struts.objectFactory为spring 就需要StrutsSpringObjectFactory

LegacyPropertiesConfigurationProvider: strutus 相关的properties文件

DefaultPropertiesProvider:: 初始化org/apache/struts2/default.properties文件

转载:Struts2源码浅析-ConfigurationProvider mark
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: