![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring源码
spring源码相关文章
金木木V
这个作者很懒,什么都没留下…
展开
-
Mybatis中#{}与${}的区别
1.#{}是预编译处理,在执行过程中会先将#{}用?代替,然后执行statement会用set方法进行赋值2.${}是字符串直接替换 会造成sql注入问题比如 select * from user where username=${zs or 1=1}那这个sql恒成立,总能查到数据...原创 2022-01-12 15:22:24 · 157 阅读 · 0 评论 -
Spring是如何保存bean对象的(spring源码02)
spring为不同格式的配置文件提供了一个通用的接口(BeanDefintionReader)将这些配置文件解析成BeanDefinition(bean的定义信息,即xml定义的对象的属性值)spring为啥可以作为spring全家桶的基石? 因为spring的可扩展性。spring既然是可扩展的,那么从BeanDefinition 到new/反射成对象之前 就应该有一些可自定义的操作,让我们能够对BeanDefinition进行修改,操作。那么怎么取得这个接口spring将所有的对象和...原创 2021-11-06 11:44:06 · 750 阅读 · 0 评论 -
spring循环依赖 及为什么用三级缓存进行解决?spring源码05
什么是spring循环依赖?在讲spring循环依赖前 我们要认识到 在spring容器内,对象默认都是单例的。假设有两个类A,B,A类中有b属性,B类中有a属性,当我们创建A对象时,需要给A一个B对象,那我们需要创建B对象,B类有个A类属性,那么要创建个A类对象给b对象,此时就陷入了一个循环中。这就是spring循环依赖问题。那么如何解决spring循环依赖?如图所示,只要我们解决闭环即可,当我们在实例化A对象时将 未填充b属性的A对象放到一个map里(缓存)这时当b类创建的时候.原创 2021-11-13 10:40:19 · 461 阅读 · 0 评论 -
Spring 脉络梳理 spring源码01
1.什么是spring?spring不仅是一个框架,更是一个容器,一个用来管理所有bean对象的容器,spring的作用是 从 对象的创建 使用 销毁 都由spring来管理。它包括两大功能 aop 和ioc我们是如何使用spring框架的? 使用spring框架 就是告诉spring 需要管理那些类两种方式: 1.xml 文件格式id:类名 class:告诉spring 这个类在哪 property:属性2.注解模式(@bean @Service )spring 创建对象...原创 2021-11-06 09:25:08 · 91 阅读 · 0 评论 -
spring创建bean流程 (Spring源码03) spring bean的生命周期
1.实例化对象======= 在堆中为对象开辟空间2.初始化对象 步骤如下: 2.0 填充属性 === set方法 2.1 执行 aware接口的方法 如何理解 aware接口:从用户的角度出发,容器里的对象分为两种:1.容器本身的对象比如:beanfactiry applicationcontext 对象 2.用户自定义的对象。 那么用户自定义的对象如何获取到容器本身的对象呢?只需要实现相应的aware接口即可。比如在user类...原创 2021-11-12 11:05:32 · 57 阅读 · 0 评论 -
Spring是如何加载配置文件的 spring源码04
1.通过io流读取xml此时xml成为了一个有特殊格式的字符串2.通过 dom4j将字符串转换成document3.遍历document,每一种标签都有响应的处理器,找到相应的处理器进行解析操作原创 2021-11-12 11:12:30 · 401 阅读 · 0 评论