Spring bean的生命周期笔记

Spring框架中的核心组件是bean,它们由IoC容器管理,经历从类到对象的完整生命周期,包括实例化、属性填充和初始化。AOP(面向切面编程)用于增强bean的功能,如事务管理。Spring通过CGLIB创建代理对象实现AOP。单例bean会被存放在一个池中,确保每次获取到的是同一个实例。
摘要由CSDN通过智能技术生成

什么是spring Bean?

在 Spring 中,构成应用程序主干并由Spring IoC容器管理的对象称为bean。bean是一个由Spring IoC容器实例化、组装和管理的对象。

Spring bean的生命周期

class---->构造方法(推断构造方法)---->实例化---->对象---->属性填充populateBean---->初始化afterPropertiesSet---->AOP(代理对象:如果实现了的话)---->放入单例池---->(单例)Bean

在这里插入图片描述

AOP

1.要不要使用AOP

  1. 从容器里面拿到所有的切面Bean---->Map
  2. 匹配切点

2.怎样实现AOP cglib----->代理对象

代理类----->代理对象

class UserServiceProxy extend UserService{
	private UserService target;
  	public void test(){
   		//1.执行代理逻辑方法
   		//2.执行业务逻辑方法
   		target.test();
   }
}

代理类----->代理对象

//Spring事务
class UserServiceProxy extend UserService{
	private UserService target;
  	public void test(){
   		//建立数据库连接Conn
   		//事务管理器的DataSource Conn.autocommit = false;
   		target.test();
   		//提交commit
   }
}

判断对象是否实现了InitializingBean接口,实现了Spring会自动调用afterPropertiesSet方法。是Spring提供的一种扩展机制,主要用于默认值赋值以及属性验证。

单例池 ConcurrentHashMap<beanName,单例Bean对象>

Spring创建对象

  1. new
  2. 构造方法,反射

单例Bean:通过相同的名字,拿到相同的对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值