spring
2023-10-20 15:06:48 13 举报
Spring是一个开源的Java平台,它提供了一种简单的方法来开发Java应用程序。Spring框架通过控制反转(IoC)和面向切面编程(AOP)等技术,使开发人员能够更轻松地构建可扩展、灵活且易于维护的应用程序。Spring框架的核心功能包括依赖注入(DI)、事务管理、安全性、数据访问和集成支持等。此外,Spring还拥有丰富的生态系统,包括各种插件和模块,以满足不同类型应用程序的需求。总之,Spring是一个功能强大且广泛使用的Java框架,它为开发人员提供了一个高效、稳定且易于使用的开发环境。
作者其他创作
大纲/内容
request
如果Bean实现了DisposableBean接口则回调用器destroy方法
为每一个session中创建一个对象
properties
实现该接口,来读取不同的配置文件
context.getBean();
增强BeanDefinition信息
system.getEnv();
spring源码阅读必备
验证码校验
prototype
BeanDefinitionReader
实例化后的对象杯分装到BeanWrapper中,spring根据BeanDefinition中的信息通过BeanWrapper中提供的设置属性的接口完成注入
getObjectType
Bean初始化
yaml
增强Bean信息例如:AOP 的实现(JDK或cglib)
BeanFactory
为每一个网络请求创建一个实例
populate
PostProcessor
实例化对象完成
spring容器中Bean的作用域
白名单
Bean工厂,整个容器的跟接口,也是容器的入口Constructor ctor = clazz.getConstructor();Objce obj = ctor.newInstance();
如果实现了BeanPostProcessor接口则回调用postProcessBeforeInitialization方法
spring内部对象
isSingleton
身份
创建顺序
接口
BeanFactoryPostProcessor
实例化对象
spring会检测Bean对象是否实现了Aware接口并将相关实例注入(实际上就是将spring的内部对象注入)
Envionment
实例化
为每一个bean的请求创建一个对象(克隆的方式-原型模式)
对象的销毁
内置对象spring需要的对象
如果实现Aware接口则设置Aware接口中的属性
如果实现了BeanPostProcessor接口则回调用postProcessAfterInitialization方法
将其配置文件中配置的对象属性值设置到器对象中
如果配置了destroy-method方法则会自动调用该销毁方法
设置Aware接口的属性
单例容器中只有一个对象
session
相同点:都是用来创建对象的不同点:当使用BeanFactory的时候会遵循完整的创建过程,而这个过程时由spring来进行控制的。当使用FactoryBean创建对象时整个对象的创建是由我们用户来决定的更加灵活。
冻结用户查询
是否冻结
用户是否有效状态校验
XML
执行init-method方法初始化对象
普通对象
通过反射创建对象
BeanDefinition
BeanFactory和FactoryBean的区别
密码校验
用于对Bean的定义信息进行扩展例如:对配置文件中的${..}这部分信息进行替换
完整对象
FactoryBean
由用户定义的对象
Aware
是否修改密码
BeanPostPorecessor::after
IOC容器
springBean
BeanPostProecssor
BeanPostPorecessor::bofore
singleton
getObject
账号是否过期
Bean生命周期 详细步骤
StandarEnviment
如果配置了init-method方法则执行
通过统一身份认证平台获取用户信息
BeadDefinition
BeanPostProcessor
填充属性
通过获取BeanDefinition对象中的信息进行实例化
定义规范方便扩展
后置处理器或增强器
BeanFactoryPostProecssor
用于Bean对像获取spring内部的一些东西方式:通过实现Aware例如:给Bean设置applicationContext
CustomUsernamePasswordAuthentication doAuthentication
无效
配置文件
其他
System.getProperties();
springIOC脉络图
0 条评论
下一页