2012-01-26 2 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 객체를 빈에 삽입하는 방법은 무엇입니까?guice가 Map 객체를 삽입하는 방법은 무엇입니까?

+0

'Person' 필드'Map sons'에 행 유형을 사용 하시겠습니까? –

+0

물론 일반 수업! –

답변

0

난 당신이 this bind method를 사용하려면 다음 필요합니다 TypeLiteral

을 사용하려는 생각한다.

다른 옵션은지도를 좀 더 간단한 유형 인 PersonAccess으로 마무리하는 것입니다. 이것은 룩업의 구현을 숨길 수 있기 때문에 어쨌든 더 좋을 수도 있습니다.

관련 문제