可以使用一个方法的输出来自动装配另一个bean吗?

时间:2011-09-08 21:03:54

标签: java spring dependency-injection

我有以下课程

public class Customer {
    private String firstName;
    private String lastName;
    public void setFirstName(String fName) {
       this.firstName = fName;
    }
    public void setLastName(String lName) {
       this.lastName = lName;
    }
};

我还有另一个课程,可以完成以下任务。

public class NameGenerator {
    public String generateName() {
       return "Zee Zee";
    }
};

是否可以设置客户名称(将名称注入客户)而无需传递NameGenerator bean。相反,我期望注入generateName()方法的输出?

这个问题是为了理解它是否可以完成而不一定深入研究最佳实践。

2 个答案:

答案 0 :(得分:0)

如果你真的想要使用静态方法调用的结果并将其注入另一个bean,你可以去MethodInvokingFactoryBean类。

MethodInvokingFactoryBean返回一个值,该值是静态或实例方法调用的结果。

答案 1 :(得分:-1)

我不认为这是否可行。为什么首先要做到这一点?