Spring中的NamespaceHandler接口及相关软件包说明

 更新时间:2023年12月02日 09:27:57   作者: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接口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring配置动态数据源实现读写分离的方法

    Spring配置动态数据源实现读写分离的方法

    这篇文章主要介绍了利用Spring配置动态数据源实现读写分离的方法,文中通过示例代码介绍的很详细,相信对大家的理解和学习具有一定的参考借鉴价值,藕需要的朋友可以一起学习学习。
    2017-01-01
  • MyBatis实现留言板的示例代码

    MyBatis实现留言板的示例代码

    本文主要介绍了MyBatis实现留言板的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • Java利用Selenium操作浏览器的示例详解

    Java利用Selenium操作浏览器的示例详解

    本文主要介绍如何使用java代码利用Selenium操作浏览器,某些网页元素加载慢,如何操作元素就会把找不到元素的异常,此时需要设置元素等待,等待元素加载完,再操作,感兴趣的可以了解一下
    2023-01-01
  • Java Lambda表达式之从集合到流

    Java Lambda表达式之从集合到流

    这篇文章主要介绍了Java Lambda表达式之从集合到流知识,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • Spring根据XML配置文件 p名称空间注入属性的实例

    Spring根据XML配置文件 p名称空间注入属性的实例

    下面小编就为大家分享一篇Spring根据XML配置文件 p名称空间注入属性的实例,具有很好的参考价值。希望对大家有所帮助
    2017-11-11
  • Springboot关于自定义stater的yml无法提示问题解决方案

    Springboot关于自定义stater的yml无法提示问题解决方案

    这篇文章主要介绍了Springboot关于自定义stater的yml无法提示问题及解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 关于两个BeanUtils.copyProperties()的用法及区别

    关于两个BeanUtils.copyProperties()的用法及区别

    这篇文章主要介绍了关于两个BeanUtils.copyProperties()的用法及区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • SpringBoot+Echarts实现请求后台数据显示饼状图

    SpringBoot+Echarts实现请求后台数据显示饼状图

    这篇文章主要介绍了SpringBoot+Echarts实现请求后台数据显示饼状图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • response.setContentType()参数以及作用详解

    response.setContentType()参数以及作用详解

    这篇文章主要介绍了response.setContentType()参数以及作用详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 如何使用SpringBootCondition更自由地定义条件化配置

    如何使用SpringBootCondition更自由地定义条件化配置

    这篇文章主要介绍了如何使用SpringBootCondition更自由地定义条件化配置,帮助大家更好的理解和学习使用springboot框架,感兴趣的朋友可以了解下
    2021-04-04

最新评论