私のプロジェクトではGuiceをDIに使用していますが、私のクラスでは非シングルトンオブジェクトの初期化を怠惰にしたいと思っています。 Provider
を使用しようとしていましたが、get()
メソッドを呼び出すたびに新しいインスタンスが返されました。guiceの非シングルトンの遅延ロード
public class MyClass {
@Inject
private Provider<Service> serviceProvider; //Service is NOT Singleton
public void meth1() {
Service s1 = serviceProvider.get();
}
public void meth2() {
Service s2 = serviceProvider.get();
}
//I want s1 and s2 to be the same object
}
んGuiceには、それを行うことができ、またはそれを達するために、他のプラクティスはありますか?
「sとs2が同じオブジェクトになりたい」 - なぜですか?それらが同じインスタンスへの2つの参照である場合、なぜ最初に2つの参照が必要ですか? – Thomas
どうしたらいいですか? 'Service s2 = s;'? 「レイジーインジェクション」とはどういう意味ですか? – alfasin
私はメッセージを編集します。今度はもっと明白なことを望みます。 – Andrew