Как ввести объект карты по хитрости? - PullRequest
0 голосов
/ 26 января 2012
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());
  }
} 

Как показано в коде, как внедрить существующий объект Map в bean-компонент с помощью хитрости?

1 Ответ

0 голосов
/ 02 февраля 2012

Я подозреваю, что вы хотите использовать TypeLiteral

Затем вам нужно будет использовать этот метод связывания .

Другим вариантом было бы обернуть вашу Карту в более простой тип, возможно PersonAccess. В любом случае это может быть лучше, так как это может скрыть реализацию поиска.

...