2012-01-26 69 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

我懷疑你想使用TypeLiteral

然後,您將需要使用this bind method

另一種選擇是將地圖換成簡單的類型,或許是PersonAccess。無論如何,這可能會更好,因爲它可能隱藏查找的實現。