Loading

7 spring 识别自定义实现BeanFactoryPostProcessor 的接口

如果自定义实现了BeanFactoryPostProcessor接口,那么想让spring识别到的话,有两种方式:

1 定义在spring的配置文件中,让spring自动识别

代码实现如下:

定义实现BeanFactoryPostProcessor接口 的类 MyBeanFactoryPostProcessor,代码如下:

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
 
/**
 * @author Administrator
 * @title: MyBeanFactoryPostProcessor
 * @projectName spring
 * @description: TODO
 * @date 2022/3/1121:22
 */
public class MyBeanFactoryPostProcessor implements BeanFactoryPostProcessor {
 
    @Override
    public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
        //BeanDefinition a = beanFactory.getBeanDefinition("a");
        System.out.println("设置 BeanDefinition  -----------   ");
 
    }
}

  

在spring-context.xml 文件中定义bean,类为 MyBeanFactoryPostProcessor。

 

 

2 调用具体的addBeanFactoryPostProcessor方法

首先定义实现BeanFactoryPostProcessor接口 的类 MyBeanFactoryPostProcessor,代码如法1所示。

其次是在启动类中重写 customizeBeanFactory()方法,调 用 super.addBeanFactoryPostProcessor() 添加自定义类。代码如下:

 

posted @ 2024-02-21 22:02  zgcy123456  阅读(18)  评论(0)    收藏  举报