Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的

ClassPathXmlApplicationContext的获得方式:ClassPathXmlApplicationContext context =

new ClassPathXmlApplicationContext(“Beans.xml”);


重要的成员变量:


beanFactory: DefaultListableBeanFactory

beanFactoryPostProcessors: ArrayList

classLoader: sun.misc.Launcher$AppClassLoader@14dad5dc

configLocations: Beans.xml


Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的

  • Logger: Jdk14LoggerJava Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的

如何判断ClassPathXmlApplicationContext容器里是否包含某bean?

使用方法containsBean:

Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的delegate给getBeanFactory().containsBean方法:Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的这个containsBean方法定义在AbstractApplicationContext里:Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的而getBeanFactory的实现,位于AbstractRefreshableApplicationContext里:Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的DefaultListableBeanFactory里有个成员变量beanDefinitionMap, 是一个ConcurrentHashMap:Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的我在Beans.xml里定义的bean就存储在这个hashmap里,因此最后context.containsBean返回true:Java Spring ClassPathXmlApplicationContext是如何判断容器内包含某个Bean的

上一篇:学习Linux为了什么?


下一篇:WCF基础教程之异常处理:你的Try..Catch语句真的能捕获到异常吗?