可以在没有构造函数参数的情况下使用 PicoContainer(依赖注入)吗?

Possible to use PicoContainer (Dependency injection) without constructor parameters?

我需要在不传递构造函数参数的情况下使用 PicoContainer 实现依赖注入,当前设置:

public class Shared_Data  {

    public Account_Pojo account_pojo;

    public Shared_Data(Account_Pojo account_pojo) {
        this.account_pojo = account_pojo;
    }

在上面的示例中,我需要使用 PicoContainer 实现 DI 而无需传递:Account_Pojo account_pojo 作为构造函数的参数,这是否可行?

我尝试了以下方法但没有成功:

public class Shared_Data {
    public Account_Pojo account_pojo;

    public Shared_Data() {
    }

    public void setAccount_pojo(Account_Pojo account_pojo) {
        this.account_pojo = account_pojo;
    }

    public Account_Pojo getAccount_pojo() {
        setAccount_pojo(account_pojo);
        return account_pojo;
    }
}

您可以使用 SetterInjection 组件工厂[0]设置一个 pico 容器。

pico = new DefaultPicoContainer(new SetterInjection());
pico.addComponent(Account_Pojo.class);

像这样的东西应该有用。

[0] http://picocontainer.com/setter-injection.html