Spring核心扩展点

1.Internally, the Spring Framework uses BeanPostProcessor implementations to process anycallback interfaces it can find and call the appropriate methods. If you need customfeatures or other lifecycle behavior Spring does not offer out-of-the-box, you canimplement a BeanPostProcessor yourself. For more information, seeContainer Extension Points.

2.Bean的生命周期管理实现InitialnizingBean, DisposableBean;

3.To interact with the container’s management of the bean lifecycle, you can implement theSpringInitializingBean andDisposableBean interfaces. The container callsafterPropertiesSet() for the former anddestroy() for the latter to allow the beanto perform certain actions upon initialization and destruction of your beans.


4 .InitializingBean替代方案

1.<bean name="initRedisConfig" class="com.pingan.pafa5.RedisClusterFactoryBeanOPti" init-method="init"></bean>

2.在RedisClusterFactoryBeanOPti类中初始化方法init方法上加上注解@Bean

5.DisposableBean的替代方案

<bean id="exampleInitBean" class="examples.ExampleBean" destroy-method="cleanup"/>
cleanup方法上添加@Bean方法




6.BeanPostProcessor 后置处理器中定义了Bean初始化的前置方法和后置方法,xml配置后才能发现后置处理器,可以定义多个处理器,Spring会按照定义的顺序去执行;


7.BeanPostProceccerFactory

8.ApplicationListener类的使用

应用上下文事件处理器通常是通过ApplicationEven类和ApplicationListener interface,如果一个Bean实现了部署在context中的接口,那么每一次应用 事件发布在应用个环境中的时候,Bean会被通知,实质上,这是标准的观察者模式;


角色分工:应用事件    应用监听者   事件发布者

角色关联:1.自定义的事件(BlackListEvent)继承应用事件(ApplicationEvent),应用事件构造器初始化;

2.应用监听者实现ApplicationCationListener<自定义事件>,其中onApplicationEvent()为监听到事件后处理哪些逻辑;

3.事件的触发者要实现ApplicationPublisherAware方法,构造ApplicationPublisher去发布事件,满足特定的条件时就触发事件;

4.xml中要配置发布事件的Bean和初始化监听者的Bean;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值