From ed996ab4b34fc68fa1e544136338725260b60d1b Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Thu, 25 Jul 2013 11:51:50 +0200 Subject: [PATCH] Avoid re-retrieval of singleton bean instances Issue: SPR-10663 --- .../beans/factory/support/DefaultListableBeanFactory.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java index aba52d5496..f06f32075b 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java @@ -471,12 +471,12 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto Map results = new LinkedHashMap(); for (String beanName : getBeanDefinitionNames()) { BeanDefinition beanDefinition = getBeanDefinition(beanName); - if (!beanDefinition.isAbstract() && (findAnnotationOnBean(beanName, annotationType) != null)) { + if (!beanDefinition.isAbstract() && findAnnotationOnBean(beanName, annotationType) != null) { results.put(beanName, getBean(beanName)); } } for (String beanName : getSingletonNames()) { - if (findAnnotationOnBean(beanName, annotationType) != null) { + if (!results.containsKey(beanName) && findAnnotationOnBean(beanName, annotationType) != null) { results.put(beanName, getBean(beanName)); } } -- GitLab