2012-01-26 4 views
0
class Person{ 
    Map sons; 
    Map getSons(){ 
    return sons; 
    } 
} 

class Test{ 
    public void Main(){ 
    Person p=new Person(); 
    Map sons=new HashMap<String,Person>(); 
    sons.add("jack",new Person()); 
    ..... // here use guice to inject this Map object to p,how to do it? 
    System.out.print(new Person().getSons().count()); 
    } 
} 

コードが示したように、guiceによって既存のMapオブジェクトをBeanに挿入する方法は?guiceによってMapオブジェクトを挿入する方法は?

+0

'Person'フィールド' Map sons'に行タイプを使用していますか?もちろん汎用クラスの –

+0

! –

答えて

0

私はあなたが、その後this bind methodを使用する必要がありますTypeLiteral

を使用したいと思います。

もう1つの選択肢は、おそらくより簡単なタイプのPersonAccessでマップを囲むことです。これは、ルックアップの実装を隠す可能性があるため、とにかくより良いかもしれません。

関連する問題