概述
- 概述
BeanPostProcessor[interface]是spring的后置处理器,在bean初始化前后进行一些初始化工作。postProcessBeforeInitialization在初始化之前工作 postProcessAfterInitialization在初始化之后工作
- Spring底层对BeanPostProcessor的使用
ApplicationContextAwareProcessor中使用
在spring类中需要使用到spring的上下文(ApplicationContext),只需要实现ApplicationContextAware,后置处理器会自动赋值public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { if (!(bean instanceof EnvironmentAware || bean instanceof EmbeddedValueResolverAware || bean instanceof ResourceLoaderAware || bean instanceof ApplicationEventPublisherAware || bean instanceof MessageSourceAware || bean instanceof ApplicationContextAware)){ return bean; } AccessControlContext acc = null; if (System.getSecurityManager() != null) { acc = this.applicationContext.getBeanFactory().getAccessControlContext(); } if (acc != null) { AccessController.doPrivileged((PrivilegedAction<Object>) () -> { invokeAwareInterfaces(bean); return null; }, acc); } else { invokeAwareInterfaces(bean); } return bean; }
AutowiredAnnotationBeanPostProcessor自动装配中使用
最后
以上就是欣慰飞机为你收集整理的Spring后置处理器BeanPostProcessor的全部内容,希望文章能够帮你解决Spring后置处理器BeanPostProcessor所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复