• Spring IoC源码精讲
21年品牌 40万+商家 超1.5亿件商品

Spring IoC源码精讲

正版图书,可开发票,请放心购买。

67.66 6.8折 99.8 全新

仅1件

广东广州
认证卖家担保交易快速发货售后保障

作者王涛

出版社清华大学出版社有限公司

ISBN9787302601319

出版时间2021-03

装帧平装

开本其他

定价99.8元

货号11757571

上书时间2024-06-12

哲仁书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
目录
第1章Spring容器环境搭建及基本使用

 1.1Spring容器环境搭建

 1.2Spring基本代码编辑

 1.3SpringIoC核心类

 小结

 第2章IoC资源读取及注册

 2.1XML文档验证

 2.1.1认识XML验证模式

 2.1.2Spring中XML的验证

 2.2Document对象获取

 2.3BeanDefinition注册

 2.3.1doRegisterBeanDefinitions流程

 2.3.2parseBeanDefinitions分析

 2.3.3parseDefaultElementSpring原生标签的处理

 2.3.4import标签解析

 2.3.5alias标签解析

 2.3.6bean标签解析

 ……

内容摘要
     第3章自定义标签解析 在第1章中对Spring的简单使用进行了说明,简单介绍了bean标签的使用。bean标签属于Spring的原生标签,在Spring中除了原生标签以外还能够支持自定义标签,本章将介绍SpringXML配置文件中的自定义标签如何进行自定义、如何使用自定义标签,并对SpringXML的自定义标签相关的内容进行源码分析。 3.1创建自定义标签环境搭建 在开始自定义标签分析之前,需要先编写自定义标签解析相关的测试用例,编写自定义标签需要执行下面四个步骤。 (1) 编写XSD文件或者DTD文件。 (2) 编写NamespaceHandler实现类。 (3) 编写BeanDefinitionParser实现类。 (4) 编写注册方式,向Spring中注册。 接下来对上述四个步骤做详细说明。 3.1.1编写 XSD 文件 首先编写一个Java对象用来存储自定义标签解析后的数据,编写UserXsdJava对象,代码信息如下。 //省略getter&setter public class UserXsd { private String name; private String idCard; } 完成XSD文件解析结果的存储对象后进一步编写XSD文件,该XSD文件名为user.xsd,文件内容如下。 
 
 
  
   
    
    
     
  

  
 3.1.2编写 NamespaceHandler 实现类 完成XSD文件编写后进一步编写NamespaceHandler接口的实现类,Spring提供了NamespaceHandlerSupport对象让开发者更加简单地使用,开发者只需要重写init方法即可向Spring注册标签和标签的解析对象,编写UserXsdNamespaceHandler类,详细代码如下。 public class UserXsdNamespaceHandler extends NamespaceHandlerSupport { @Override public void init() { registerBeanDefinitionParser("user_xsd",new UserXsdParser()); } } 3.1.3编写 BeanDefinitionParser 实现类 在编写NamespaceHandler实现类的时候引入了一个新的Java对象UserXsdParser,该对象是BeanDefinitionParser接口的实现类,在Spring中可以通过继承AbstractSingleBeanDefinitionParser类重写getBeanClass和doParse方法即可完成BeanDefinitionParser的实现,下面是UserXsdParser的代码内容。 public class UserXsdParser extends AbstractSingleBeanDefinitionParser { @Override protected Class
 getBeanClass(Element element) { return UserXsd.class; } @Override protected void doParse(Element element,BeanDefinitionBuilder builder) { String name = element.getAttribute("name"); String idCard = element.getAttribute("idCard"); builder.addPropertyValue("name",name); builder.addPropertyValue("idCard",idCard); } } 在这段代码中通过提取Element对象的name和idCard属性将其设置到BeanDefinitionBuilder对象的属性表中。 3.1.4编写注册方式 下面编写注册方式。注册自定义标签解析能力需要编写两个文件,一个是spring.handlers文件,另一个是spring.schemas文件。在这个测试用例中需要向spring.handlers文件中填写下面这段内容。 http\://www.huifer.com/schema/user=com.source.hot.ioc.book.namespace.handler. UserXsdNamespaceHandler 对于spring.handlers文件可以分成两部分来进行理解,第一部分是等号前面的内容,等号前的内容是指命名空间和XSD文件中schema中的targetNamespace属性之间的关系; 第二部分是等号后面的内容,它是指接口NamespaceHandler实现类的完整类路径。 完成spring.handlers编写后进一步编写spring().resolve(namespaceUri); return handler.parse(ele,new ParserContext(this.readerContext,this,containingBd)); 在这段代码中得到了NamespaceHandler对象,这个对象的实际类型是UserXsdNamespaceHandler,确认实际类型后对于parse方法入口的查询有了方向,parse方法位于UserXsdNamespaceHandler的父类NamespaceHandlerSupport中,具体代码如下。 public BeanDefinition parse(Element element,ParserContext parserContext) { //搜索 element 对应的 BeanDefinitionParser BeanDefinitionParser parser = findParserForElement(element,parserContext); //解析 return (parser !=

精彩内容
本书从Spring IoC核心技术的使用开始讲解,具备充分的Spring IoC使用说明,并且对Spring IoC核心源码进行分析。 本书分为22章,主要内容包括SpringXML模式中XML文档的验证、XML资源读取、Spring默认标签的解析、自定义标签解析、各类资源对象注册和生命周期,以及Spring注解模式中的注解元数据、注解模式的启动和注解模式下Bean的注册等。本书可以帮助读者快速掌握Spring IoC容器的基本使用及Spring IoC相关的源码逻辑。 本书的源码分析在大部分情况下遵循测试用例优先,尽可能保证源码现象可复现。 本书适合具有一定Java编程基础和对Spring框架有基本开发能力的读者。

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP