spring - 使用另一个类的静态方法创建 bean

标签 spring spring-ioc

我有一个工厂类,它有各种静态方法来返回某些类的实例。 如何在 Spring 中使用不同类中的静态工厂方法创建 bean?

类似于:

public class InstanceFactory
{    
  public static JellyBean getJellyBeanInstance()
  {
    return new JellyBean(); 
  }
}

我需要一个 JellyBean。

最佳答案

只需将您的 getJellyBeanInstance() 方法更改为非静态即可, 那么你需要:

<bean id="instanceFactory" class="InstanceFactory"/>

<bean id="yourBeanId" factory-bean="instanceFactory" factory-method="getJellyBeanInstance"/>

关于spring - 使用另一个类的静态方法创建 bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20490460/

相关文章:

java - 在构造函数中连接一个 bean 和一个值

java - Spring JPA Hibernate DeleteByColumnName 表现非常低效

java - 为什么Spring要使用XML来进行组件布线?

java - Spring 注入(inject)通用类型

java - AnnotationConfigApplicationContext.getBean返回一个不同的bean,Spring

java - 如何创建带参数的工厂方法?

java - Spring 形式 :input Tag Error

spring - 不使用 spring batch + spring boot + sql server 应用程序运行 DDL 脚本

java - 如何使用 Spring AsyncResult 和 Future Return

Spring找不到Autowired接口(interface)实现