什么是创造内部使用吉斯方法的对象有道

问题描述 投票:0回答:1

什么是创造内部使用吉斯一个Singleton对象的方法对象的正确方法。

如果我有这样下面的一些代码,什么是创造的Class2的情况下以适当的方式? 1类是独立的,并需要建立的Class2每次搜索的一个新的实例是所谓的(所以我不能与构造场注入它...)如果需要的话,我会整理的代码。

@Singleton
final class Class1 {

@Inject
private Class1(...){...}

public Class2 search(...){
   Class2 newInstance=...
   return newInstance;
}

}
java guice
1个回答
4
投票

我想我找到了。需要使用提供商这种情况。获得一流的供应商在构造和使用provider.get获得实例。

就像是:

@Singleton
final class Class1 {

Provider<Class2> p;

@Inject
private Class1(Provider<Class2> pParam;...){
p=pParam;
...
}

public Class2 search(...){
   Class2 newInstance=p.get();
   return newInstance;
}

}
© www.soinside.com 2019 - 2024. All rights reserved.