弹簧参考手册说:弹簧单体范围
Spring单例的范围最好描述为“每个容器和每个bean”。
考虑这个代码片段:
ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml")
MyBean myobj=(MyBean)context.getBean("myBean"); //myBean is of singleton scope.
MyBean myobj1=(MyBean)context.getBean("myBean");
per container
意味着,如果我们这样做context.getBean("myBean");
两次将返回即同一Bean myobj==myobj1
是true
。
但是从上面的陈述中得出的per container and per bean
中的per bean
是什么意思?
我已经描述过'每个容器和每个bean'每个容器'部分的短语,即单身bean仍然是每个容器的单身。但是'per bean'在短语'per container and per bean'中表示了什么?或者我只是用短语的语言来混淆。 – 2012-07-25 07:06:59
如果您配置了2个相同类的bean,那么容器中将有2个该类的实例,因为定义了两个bean – 2012-07-25 07:08:29