码迷,mamicode.com
首页 > 编程语言 > 详细

spring中增加自定义配置支持

时间:2017-07-20 19:40:24      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:http   framework   pat   class   并保存   命名空间   命名   handle   技术分享   

spring.schemas

在使用spring时,我们会首先编写spring的配置文件,在配置文件中,我们除了使用基本的命名空间http://www.springframework.org/schema/beans之外,我们还会用到多种其他命名空间,每一种命名空间还有一个对应的xsd文档。

比如springmvc的http://www.springframework.org/schema/mvc对应http://www.springframework.org/schema/mvc/spring-mvc.xsd,aop的http://www.springframework.org/schema/aop对应http://www.springframework.org/schema/aop/spring-aop.xsd。

技术分享

图为spring-mvc的命名空间和xsd文档的映射关系。

命名空间和xsd的映射关系保存在classpath或者jar包的META-INF/spring.schemas文件中。此文件会在多个jar包中存在,可通过ClassLoader.getSystemResources方法,获取所有文件的URL信息。

spring.handlers

命名空间中元素的处理,通过何种handler处理,META-INF/spring.handlers文件中保存了其映射关系。当spring在解析配置文件时,碰到了指定命名空间的元素,便使用对应的handler进行元素的处理。

技术分享

图为spring-mvc的命名空间和handler的映射关系。

handler

在handler中主要定义,元素的BeanDefinitionParser,通过BeanDefinitionParser处理元素,组成一个BeanDefinition,并保存到IOC中。

技术分享

自定义实现

技术分享

技术分享

技术分享

技术分享

 技术分享

技术分享

 在启动spring时,会发现控制台打印出了配置文件中的name值。

 

spring中增加自定义配置支持

标签:http   framework   pat   class   并保存   命名空间   命名   handle   技术分享   

原文地址:http://www.cnblogs.com/mahuan2/p/7213866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!