Spring BeanFactoryPostProcessor接口详细使用
BeanFactoryPostProcessor接口简介
Spring容器在初始化之前,允许我们自定义扩展改变bean的定义,BeanFactoryPostProcessor正好可以满足我们的要求,BeanFactoryPostProcessor接口的postProcessBeanFactory方法中,我们可以修改bean的定义信息,例如修改属性的值,修改bean的scope为单例或者多例。
BeanFactoryPostProcessor
bean工厂的bean属性处理容器,说通俗一些就是可以管理我们的bean工厂内所有的beandefinition(未实例化)数据,可以随心所欲的修改属性。
使用方法:
@Component
public class MyBeanFactoryPostProcessor implements BeanFactoryPostProcessor {@Overridepublic void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {AbstractBeanDefinition abstractBeanDefinition = (AbstractBeanDefinition) beanFactory.getBeanDefinition("userService");MutablePropertyValues pv = abstractBeanDefinition.getPropertyValues();pv.addPropertyValue("desc", "Desc is changed from bean factory post processor");abstractBeanDefinition.setScope(BeanDefinition.SCOPE_SINGLETON);}
}
详细BeanFactoryPostProcessor可参考spring4.1.8扩展实战之五:改变bean的定义(BeanFactoryPostProcessor接口)
Spring BeanFactoryPostProcessor接口详细使用相关推荐
- Spring BeanPostProcessor接口详细使用
BeanPostProcessor接口简介 BeanPostProcessor也称为Bean后置处理器,它是Spring中定义的接口,在Spring容器的创建过程中(具体为Bean初始化前后)会回调B ...
- Spring源码分析之BeanPostProcessor接口和BeanFactoryPostProcessor接口方法不执行原因分析
首先下面是我的Bean /** Copyright 2002-2017 the original author or authors.** Licensed under the Apache Lice ...
- Spring - BeanFactoryPostProcessor 扩展接口
文章目录 Pre org.springframework.beans.factory.config.BeanFactoryPostProcessor 源码探究 1 是否实现BeanDefinition ...
- 3W 字的 Spring Boot 超详细总结
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者|CHEN川 http://www.jianshu.c ...
- springboot 获取bean_3W 字的 Spring Boot 超详细总结
点击上方 Java后端,选择 设为星标 优质文章,及时送达 作者|CHEN川http://www.jianshu.com/p/83693d3d0a65 说明:前面有 4 个小节关于Spring的基础知 ...
- 换一种方式编写 Spring MVC 接口
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 1. 前言 通常我们编写 Spring MVC 接口的范 ...
- springbean的生命周期_spring bean生命周期(涵盖spring常用接口的载入)
spring bean生命周期流程图: 其中包含了很多常用的接口,可以参考spring 常用接口: 下面写个例子证明下: 1.实现InitializingBean以及各个Aware接口 p ...
- BeanFactoryPostProcessor接口(容器后处理器)
2019独角兽企业重金招聘Python工程师标准>>> 容器后处理器后处理容器本身.必须实现BeanFactoryPostProcessor接口,该接口中有如下方法: postPro ...
- android 如何从 3.55mm耳机接口 读取数据,USB Type-C接口详细定义,自制Type-C转3.5mm耳机转接线...
原标题:USB Type-C接口详细定义,自制Type-C转3.5mm耳机转接线 Type-C 全称是USB Type-C 接口,是一种全新的 USB 接口形式.USB Type-C接口宽度8.3毫米 ...
最新文章
- 辞职之后的思考--激励
- oracle 复制表方法,(转)oracle数据库之间 表复制方法一(extent 方法)
- 云知声CEO黄伟:AI对产业的驱动不仅是创新更是颠覆
- 小程序promise封装post请求_微信小程序promise封装get/post请求
- hdu 4622 Reincarnation SAM模板题
- linux禁止普通用户切换,Linux系统如何禁止普通用户切换root?
- sparkstreaming(1)——实战
- 我很笨,请带着真心靠近我
- 电脑开机速度慢?新手试试以下这几个小技巧!
- frameset在html5下用什么代替_速速围观!冬至吃货地图来啦~蚌埠的吃货们,你们今天吃什么?...
- 浏览器用户脚本管理器(Tampermonkey)
- java数组及Arrays创建一个int 类型数组 数组元素由键盘录入,每次打印插入排序的结果(数组扩容,数组排序,键盘录入)
- mysql 大数据量插入遇到瓶颈 可行性方案探究
- Spring Security login
- 计算机签到程序,基于spring boot技术的签到管理系统的设计与实现计算机专业.doc...
- MFC 教程【8_MFC的进程和线程 】
- python bytes转int_Python学习进阶教程(11)—数值类型
- php写2048,原生js编写2048小游戏实例代码
- 绝对路径、相对路径详解
- MATLAB-阶乘运算
热门文章
- #pragma pack(push,1) #pragma pack(pop)
- 机房维护 网拷_机房维护一二三
- Debug Tensorflow: tensorflow.python.framework.errors_impl.InvalidArgumentError: OpKernel ‘ConcatV2‘
- erlang精要(2)-数制
- 【机器学习】图解机器学习中的 12 种交叉验证技术
- 【NLP】人大团队研究:面向文本生成,预训练模型进展梳理
- 【数据竞赛】这篇文章送给想要学习特征交叉的朋友。
- 【数据分析】《唐探3》口碑急转直下?看看影迷们到底都说了些啥
- 【机器学习基础】数学推导+纯Python实现机器学习算法25:CatBoost
- YOLOv4重磅发布,五大改进,二十多项技巧实验,堪称最强目标检测万花筒