diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/config/AutowireCapableBeanFactory.java b/spring-beans/src/main/java/org/springframework/beans/factory/config/AutowireCapableBeanFactory.java index fb6e92b1faf..6f0bc6c7887 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/config/AutowireCapableBeanFactory.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/config/AutowireCapableBeanFactory.java @@ -64,7 +64,6 @@ public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates no externally defined autowiring. Note that * BeanFactoryAware etc and annotation-driven injection will still be applied. - * @see #createBean * @see #autowire * @see #autowireBeanProperties */ @@ -73,7 +72,6 @@ public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates autowiring bean properties by name * (applying to all bean property setters). - * @see #createBean * @see #autowire * @see #autowireBeanProperties */ @@ -82,7 +80,6 @@ public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates autowiring bean properties by type * (applying to all bean property setters). - * @see #createBean * @see #autowire * @see #autowireBeanProperties */ @@ -91,7 +88,6 @@ public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates autowiring the greediest constructor that * can be satisfied (involves resolving the appropriate constructor). - * @see #createBean * @see #autowire */ int AUTOWIRE_CONSTRUCTOR = 3; @@ -99,7 +95,6 @@ public interface AutowireCapableBeanFactory extends BeanFactory { /** * Constant that indicates determining an appropriate autowire strategy * through introspection of the bean class. - * @see #createBean * @see #autowire * @deprecated as of Spring 3.0: If you are using mixed autowiring strategies, * prefer annotation-based autowiring for clearer demarcation of autowiring needs. @@ -192,7 +187,9 @@ public interface AutowireCapableBeanFactory extends BeanFactory { * @see #AUTOWIRE_BY_NAME * @see #AUTOWIRE_BY_TYPE * @see #AUTOWIRE_CONSTRUCTOR + * @deprecated as of 6.1, in favor of {@link #createBean(Class)} */ + @Deprecated(since = "6.1") Object createBean(Class> beanClass, int autowireMode, boolean dependencyCheck) throws BeansException; /** @@ -322,7 +319,7 @@ public interface AutowireCapableBeanFactory extends BeanFactory { throws BeansException; /** - * Destroy the given bean instance (typically coming from {@link #createBean}), + * Destroy the given bean instance (typically coming from {@link #createBean(Class)}), * applying the {@link org.springframework.beans.factory.DisposableBean} contract as well as * registered {@link DestructionAwareBeanPostProcessor DestructionAwareBeanPostProcessors}. *
Any exception that arises during destruction should be caught diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java index 7e264e411e1..ca3b0fb0d5b 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java @@ -357,6 +357,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac // Specialized methods for fine-grained control over the bean lifecycle //------------------------------------------------------------------------- + @Deprecated @Override public Object createBean(Class> beanClass, int autowireMode, boolean dependencyCheck) throws BeansException { // Use non-singleton bean definition, to avoid registering bean as dependent bean. diff --git a/spring-context-support/src/main/java/org/springframework/scheduling/quartz/SpringBeanJobFactory.java b/spring-context-support/src/main/java/org/springframework/scheduling/quartz/SpringBeanJobFactory.java index 796f56ce025..2d48a2258ae 100644 --- a/spring-context-support/src/main/java/org/springframework/scheduling/quartz/SpringBeanJobFactory.java +++ b/spring-context-support/src/main/java/org/springframework/scheduling/quartz/SpringBeanJobFactory.java @@ -22,7 +22,6 @@ import org.quartz.spi.TriggerFiredBundle; import org.springframework.beans.BeanWrapper; import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.PropertyAccessorFactory; -import org.springframework.beans.factory.config.AutowireCapableBeanFactory; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.lang.Nullable; @@ -87,9 +86,7 @@ public class SpringBeanJobFactory extends AdaptableJobFactory @Override protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception { Object job = (this.applicationContext != null ? - // to be replaced with createBean(Class) in 6.1 - this.applicationContext.getAutowireCapableBeanFactory().createBean( - bundle.getJobDetail().getJobClass(), AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR, false) : + this.applicationContext.getAutowireCapableBeanFactory().createBean(bundle.getJobDetail().getJobClass()) : super.createJobInstance(bundle)); if (isEligibleForPropertyPopulation(job)) { diff --git a/spring-orm/src/main/java/org/springframework/orm/hibernate5/SpringBeanContainer.java b/spring-orm/src/main/java/org/springframework/orm/hibernate5/SpringBeanContainer.java index e33013c4488..912ebf544ab 100644 --- a/spring-orm/src/main/java/org/springframework/orm/hibernate5/SpringBeanContainer.java +++ b/spring-orm/src/main/java/org/springframework/orm/hibernate5/SpringBeanContainer.java @@ -144,7 +144,7 @@ public final class SpringBeanContainer implements BeanContainer { try { if (lifecycleOptions.useJpaCompliantCreation()) { return new SpringContainedBean<>( - this.beanFactory.createBean(beanType, AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR, false), + this.beanFactory.createBean(beanType), this.beanFactory::destroyBean); } else { diff --git a/spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java b/spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java index 9bbd3eed92f..78863eeb8b6 100644 --- a/spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java +++ b/spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2022 the original author or authors. + * Copyright 2002-2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -421,6 +421,7 @@ class StubWebApplicationContext implements WebApplicationContext { return BeanUtils.instantiateClass(beanClass); } + @Deprecated @Override public Object createBean(Class> beanClass, int autowireMode, boolean dependencyCheck) { return BeanUtils.instantiateClass(beanClass); diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java index 694e40eebf7..66a75e4e2ba 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java @@ -915,12 +915,12 @@ public class DispatcherServlet extends FrameworkServlet { /** * Create a default strategy. *
The default implementation uses - * {@link org.springframework.beans.factory.config.AutowireCapableBeanFactory#createBean}. + * {@link org.springframework.beans.factory.config.AutowireCapableBeanFactory#createBean(Class)}. * @param context the current WebApplicationContext * @param clazz the strategy implementation class to instantiate * @return the fully configured strategy instance * @see org.springframework.context.ApplicationContext#getAutowireCapableBeanFactory() - * @see org.springframework.beans.factory.config.AutowireCapableBeanFactory#createBean + * @see org.springframework.beans.factory.config.AutowireCapableBeanFactory#createBean(Class) */ protected Object createDefaultStrategy(ApplicationContext context, Class> clazz) { return context.getAutowireCapableBeanFactory().createBean(clazz);