У меня есть классы B, C и D. Сейчас я хочу добавить класс A, атрибуты которого полностью связаны со значениями в конфигурации приложения.Как лучше всего использовать Guice для ввода значений в класс A?
public class A {
public A(@Named("id") String id, ..., @Named("attr") String attr) {
....
}
}
public class B {
public B() {
this.a = new A();
}
}
public class C {
public C() {
this.b = new B();
}
}
public class D {
@Inject
private Injector injector;
public D() {
this.c = new C();
}
}
Одна из возможностей, о которой я могу подумать, - это продолжать передавать экземпляр Injector с D на B и менять B st:
public class B {
public B(Injector injector) {
this.a = injector.getInstance(A.class);
}
}
Это кажется плохой формой, и я не видел онлайн примеров, использующих это.Любые предложения приветствуются.