Попытка понять, как подключиться к MongoDB в Play Framework JAVA (версия 2.4x), используя встроенную инфраструктуру DI, Guice.Инъекция экземпляра MongoDB в Play Framework [java]
До сих пор я использую Jongo (версия 1.2). Я создаю класс JongoProvider, где я инициализирую экземпляр MongoDB соответствующим IP-адресом для MongoDB и т. Д.
Я вставляю это в модель, как показано ниже ..., однако кажется, что я не могу получить доступ к инъецированному экземпляру в статический метод. Есть ли правильный способ доступа к инъекционному объекту Mongo?
class User {
@Inject JongoProvider jongo;
public static User getUsers() {
// can't access static instance
jongo.getcollection("users");
}
}
// === Редактирование на основе ответа Пн кальмара в
class User {
public static JongoProvider jongo() {
return Play.application().injector().instanceOf(JongoProvider.class);
}
public static User getUsers() {
jongo().getcollection("users");
}
}
Да, не используйте статический метод. –