spring源码解析
文章平均质量分 61
自己琢磨srping,笔记记录。
w_l666
这个作者很懒,什么都没留下…
展开
-
spring源码解析(四)
通过查看源码可知,源码中的addAll方法,底层实际调用的还是add方法。所以在addAll中的每个元素,都得调用一遍add方法。按照正常的逻辑来说,在程序执行完addAll方法后,第二个输出是6,这样才对。但是为什么输出了9呢,我们点进set的addall方法看看。可以看到,在使用组合关系的代码中,我们可以将这个对象作为一个变量放入我们的类中,来灵活的控制。需求:求解set总共进行了多少次add操作。通过下面的需求看看反面例子和正面例子。原创 2023-11-23 21:41:49 · 365 阅读 · 0 评论 -
spring源码解析(七)
通过代码模拟实现@Autowired,@Component,@Resource,@Component注解的简单的自我实现。持续更新中................,关注不迷路。具体实现过程,请看代码注释以及代码。原创 2024-01-11 17:32:22 · 394 阅读 · 0 评论 -
spring源码解析(六)
bean对象的初始化及销毁时,执行相关操作的几种方式。原创 2024-01-10 16:33:10 · 437 阅读 · 0 评论 -
spring源码解析(五)
一个受 Spring 管理的 bean,生命周期主要阶段有 :1、创建:根据 bean 的构造方法或者工厂方法来创建 bean 实例对象2、依赖注入:根据 @Autowired,@Value ,@Resource或其它一些手段,为 bean 的成员变量填充值、建立关系此处注意: @Autowired不仅可以加载成员变量上,还可以加在方法上和构造方法上。3、初始化:回调各种 Aware 接口(@PostConstruct,@Bean()),调用对象的各种初始化方法。原创 2023-12-03 16:38:56 · 392 阅读 · 0 评论 -
spring源码解析(三)
管理对象的顶级接口是,BeanFactory.至此,获取bean对象的三种方式讲解完毕。下一篇,讲解application的详细使用。可以看出,我们在获取bena时,首先会调用无参构造,然后会调用我们设定的初始化方法。从执行结果可以看出:当使用scan扫描获取bean对象时,不会执行init方法。还有一点,spring容器只有在第一次使用bean对象时,才会创建这个bean。通过下面代码,熟悉bean工厂是如何管理bean对象的。第二,通过扫描获取bean对象。原创 2023-08-02 23:33:56 · 83 阅读 · 0 评论 -
spring源码解析(二)
依赖注入是一种实现对象解耦的重要设计模式。在Spring框架中,依赖注入是通过构造函数注入、属性注入和方法注入等方式实现的。这种方式使得对象之间的依赖关系外部化配置,提高了代码的灵活性和可维护性。无论是通过XML配置文件还是注解方式,Spring框架都能够轻松地实现依赖注入。选择合适的依赖注入方式取决于具体的需求和项目要求。Spring Boot是一种用于快速构建基于Spring的应用程序的开发框架。它通过提供默认配置和自动化的工具,大大简化了Spring应用程序的开发和部署过程。原创 2023-07-25 22:31:41 · 67 阅读 · 0 评论 -
spring源码解析(一)
IoC(控制反转)和DI(依赖注入):Spring通过IoC容器管理对象的生命周期和依赖关系,实现了对象之间的解耦。使用依赖注入,可以将对象之间的依赖关系外部化配置,提高代码的可读性、可维护性和可测试性。AOP(面向切面编程):Spring支持AOP,使得开发者能够将与业务逻辑无关的横切关注点(如日志记录、安全性、事务管理等)从主要业务逻辑中分离出来,实现了关注点的复用和维护。声明式事务管理:Spring提供了对事务管理的支持,通过声明式的方式简化了事务代码的编写和管理。原创 2023-07-25 21:48:35 · 139 阅读 · 0 评论