Spring中的NamespaceHandler接口及相关软件包说明
作者:Leon_Jinhai_Sun
这篇文章主要介绍了Spring中的NamespaceHandler接口及相关软件包说明,NamespaceHandler 接口,DefaultBeanDefinitionDocumentReader 使用该接口来处理在spring xml 配置文件中自定义的命名空间,需要的朋友可以参考下
NamespaceHandler接口
NamespaceHandler 接口,DefaultBeanDefinitionDocumentReader 使用该接口来处理在spring xml 配置文件中自定义的命名空间。
在jdbc 模块,我们使用JdbcNamespaceHandler 来处理jdbc 配置的命名空间,其代码如下:
public class JdbcNamespaceHandler extends NamespaceHandlerSupport { public JdbcNamespaceHandler() { } public void init() { this.registerBeanDefinitionParser("embedded-database", new EmbeddedDatabaseBeanDefinitionParser()); this.registerBeanDefinitionParser("initialize-database", new InitializeDatabaseBeanDefinitionParser()); } }
其中, EmbeddedDatabaseBeanDefinitionParser 继承了AbstractBeanDefinitionParser , 解析<embedded-database> 元素, 并使用EmbeddedDatabaseFactoryBean 创建一个BeanDefinition。
顺便介绍一下用到的软件包org.w3c.dom。
软件包org.w3c.dom:为文档对象模型(DOM) 提供接口,该模型是Java API for XMLProcessing 的组件API。该Document Object Model Level 2 Core API 允许程序动态访问和更新文档的内容和结构。
- Attr:Attr 接口表示Element 对象中的属性。
- CDATASection: CDATA 节用于转义文本块,该文本块包含的字符如果不转义则会被视为标记。
- CharacterData: CharacterData 接口使用属性集合和用于访问DOM 中字符数据的方法扩展节点。
- Comment: 此接口继承自CharacterData 表示注释的内容,即起始'<!--' 和结束'-->' 之间的所有字符。
- Document: Document 接口表示整个HTML 或XML 文档。
- DocumentFragment: DocumentFragment 是“轻量级”或“最小”Document 对象。
- DocumentType: 每个Document 都有doctype 属性,该属性的值可以为null,也可以为DocumentType 对象。
- DOMConfiguration: 该DOMConfiguration 接口表示文档的配置,并维护一个可识别的参数表。
- DOMError: DOMError 是一个描述错误的接口。
- DOMErrorHandler: DOMErrorHandler 是在报告处理XML 数据时发生的错误或在进行某些其他处理(如验证文档)时DOM 实现可以调用的回调接口。
- DOMImplementation: DOMImplementation 接口为执行独立于文档对象模型的任何特定实例的操作提供了许多方法。
- DOMImplementationList: DOMImplementationList 接口提供对DOM 实现的有序集合的抽象,没有定义或约束如何实现此集合。
- DOMImplementationSource: 此接口允许DOM 实现程序根据请求的功能和版本提供一个或多个实现,如下所述。
- DOMLocator: DOMLocator 是一个描述位置(如发生错误的位置)的接口。
- DOMStringList: DOMStringList 接口提供对DOMString 值的有序集合的抽象,没有定义或约束此集合是如何实现的。
- Element: Element 接口表示HTML 或XML 文档中的一个元素。
- Entity: 此接口表示在XML 文档中解析和未解析的已知实体。
- EntityReference: EntityReference 节点可以用来在树中表示实体引用。
- NamedNodeMap: 实现NamedNodeMap 接口的对象用于表示可以通过名称访问的节点的集合。
- NameList NameList 接口提供对并行的名称和名称空间值对(可以为null 值)的有序集合的抽象,无需定义或约束如何实现此集合。
- Node: 该Node 接口是整个文档对象模型的主要数据类型。
- NodeList: NodeList 接口提供对节点的有序集合的抽象,没有定义或约束如何实现此集合。
- Notation: 此接口表示在DTD 中声明的表示法。
- ProcessingInstruction: ProcessingInstruction 接口表示“处理指令”,该指令作为一种在文档的文本中保持特定于处理器的信息的方法在XML 中使用。
- Text: 该Text 接口继承自CharacterData,并且表示Element 或Attr 的文本内容(在XML 中称为字符数据)。
- TypeInfo: TypeInfo 接口表示从Element 或Attr 节点引用的类型,用与文档相关的模式指定。
- UserDataHandler: 当使用Node.setUserData() 将一个对象与节点上的键相关联时,当克隆、导入或重命名该对象关联的节点时应用程序可以提供调用的处理程序。
到此这篇关于Spring中的NamespaceHandler接口及相关软件包说明的文章就介绍到这了,更多相关NamespaceHandler接口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!