# 19.BeanDefinitionRegistryPostProcessor ```java /** * @program SpringBooks * @description: MyBeanDefinitionRegistryPostProcessor * @author: mf * @create: 2020/02/02 23:18 */ package org.example.ext; import org.springframework.beans.BeansException; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor; import org.springframework.stereotype.Component; @Component public class MyBeanDefinitionRegistryPostProcessor implements BeanDefinitionRegistryPostProcessor { public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry beanDefinitionRegistry) throws BeansException { System.out.println("MyBeanDefinitionRegistryPostProcessor...bean的数量:"+beanDefinitionRegistry.getBeanDefinitionCount()); } //BeanDefinitionRegistry Bean定义信息的保存中心,以后BeanFactory就是按照BeanDefinitionRegistry里面保存的每一个bean定义信息创建bean实例; public void postProcessBeanFactory(ConfigurableListableBeanFactory configurableListableBeanFactory) throws BeansException { System.out.println("postProcessBeanDefinitionRegistry...bean的数量:"+configurableListableBeanFactory.getBeanDefinitionCount()); // 自己也可以在这里添加额外的bean } } ```