![](https://img-blog.csdnimg.cn/20210205095602724.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Spring
文章平均质量分 92
Spring
Java小白白又白
Java小白
展开
-
Spring中的可扩展点(二)自定义属性编辑器
目录1.自定义属性编辑器具体步骤2.DEMO例程2.1 创建Address类2.2 创建Customer类,依赖于Address2.3 创建自定义Editor2.4 创建自定义Registrar2.5 创建customizeEditor.xml配置文件2.6 Application2.7 结果演示3.Spring是如何做到可扩展的1.自定义属性编辑器具体步骤自定义一个实现了PropertyEditorSupport接口的编辑器,重写setAsText方法。原创 2022-05-14 14:45:29 · 630 阅读 · 0 评论 -
Spring中的可扩展点(一)自定义标签
目录1.自定义标签具体步骤2.DEMO例程2.1 创建User类2.2 创建自定义解析器UserBeanDefinitionParser2.3 创建自定义处理器UserNameSpaceHandler2.4 创建自定义XSD2.5 创建Spring.handlers 和 Spring.schemas2.6 测试类 Application2.7 运行结果及目录结构:3.我们创建的几个文件是如何关联到一起的4.Spring是如何做到可扩展的1.自定义标签具体步骤原创 2022-05-13 23:09:26 · 776 阅读 · 0 评论 -
Spring 循环依赖(5.2.x)
1.回顾getBean过程Spring getBean过程如上时序图所示,AbstractBeanFactory第一次调用getSingleton方法入参为beanName:如果未查询到Bean信息那么就会二次调用getSingleton方法,入参为beanName和ObjectFactory:这里用了一个lambda表达式,这次会尝试创建Bean,内部会回调到上图红框里createBean方法开始创建Bean。2.回顾创建拥有简单依赖...原创 2022-04-29 17:18:53 · 1068 阅读 · 0 评论 -
Spring Bean 生命周期
目录1.元信息配置阶段2.元信息解析阶段(封装BeanDefinition)3.Bean注册阶段4.实例化阶段5.属性赋值阶段6.初始化阶段6.1 Aware接口回调阶段6.2 实例化前置增强阶段6.3 初始化6.4 实例化后置增强阶段7.销毁阶段7.1 销毁前阶段7.2 销毁中阶段1.元信息配置阶段Spring 最早支持在 xml 中配置 Bean 的元信息,这些 bean 元信息的配置都处于资源文件中,由于需要大量手工配...原创 2022-04-29 15:08:30 · 637 阅读 · 0 评论 -
Spring创建BeanDefinition全流程解析(5.2.x)
1.Spring源码怎么学注:这里笔者只是分享一下自己的心得,可能并不适合所有人,如果您觉得有道理不妨一试。 刚看Spring源码优先理清楚整体逻辑,切记刚入手就开始扣代码细节,容易越陷越深导致学迷。建议先理清楚refresh()中的主要方法,再详细深入每一个方法。Spring在设计上大量运用了设计模式(观察者模式、适配器模代理模式),如果碰到看起来很奇怪的名词,先往设计模式上想,找到对应设计模式后先弄懂该设计模式,然后再去看源...原创 2022-04-25 20:02:40 · 1103 阅读 · 0 评论 -
Spring IOC
1.Spring IOC容器和Bean简介在 Spring 中,构成应用程序主干并由 Spring IOC 容器管理的对象称为 bean。bean 是由 Spring IoC 容器实例化、组装和管理的对象。bean 只是应用程序中的众多对象之一。Bean 以及它们之间的依赖关系反映在容器使用的配置元数据中。IOC也称为依赖注入 (DI),对象仅通过构造函数参数、工厂方法的参数或在对象实例被构造或从工厂方法返回后设置的属性来定义它们的依赖关系, 然后容器在创建 ...原创 2022-04-13 14:10:58 · 708 阅读 · 0 评论 -
SpringIOC注解总结
1.组件添加相关注解 1.1 @Configuration 作用在类上,告诉Spring这是一个配置类。 相当于一个xml配置文件 1.2 @Bean 作用在方法上,告诉Spring这是一个需要管理的Bean,id默认为方法名,也可以在注解内配置value值作为Bean的id。 相当于xml配置文件中的<Bean>标签 1.3 @ComponentScan ...原创 2021-03-25 20:03:14 · 460 阅读 · 1 评论 -
Spring配置文件头及xsd约束文件详解
1.老版本applicationContext.xml中的dtd约束文件 在Spring的核心配置文件applicationContext.xml中我们总能看到如下图这样的配置:红框里的部分的作用究竟是什么呢?想了解这个问题我们先看一下老版本的applicationContext.xml配置文件是什么样子的: 第一行表示xml声明,任何格式良好的xml文档第一行都必须是声明,相当于告诉解析器这个是xml文档,请用xml解析器进行解析。下面的dtd文件又是什么...原创 2021-02-05 11:11:05 · 1608 阅读 · 1 评论 -
用通俗易懂的语言去解释cglib的动态代理
读完本篇文章将会了解以下问题1.cglib是什么2.cglib能做什么3.cglib如何使用4.cglib底层实现原理5.为什么Spring中方法嵌套会导致事务失效---------------------------------------------------------------------------------------------------------------------------1.cglib是什么 Code Generation ...原创 2020-09-05 23:41:48 · 4539 阅读 · 0 评论