如何在时间绑定中起作用在play框架中?

时间:2018-04-12 05:36:16

标签: java scala dependency-injection playframework guice

如何注入我在Play应用程序中创建的依赖项。我也不明白如何在不定义任何绑定的情况下查看它们的注入方式。

https://github.com/manuelbernhardt/reactive-web-applications/blob/master/CH04/app/controllers/Quiz.scala

任何人都可以参考这个例子来解释。如何注入VocabularyService的对象?

1 个答案:

答案 0 :(得分:3)

这个问题更多是关于依赖注入而不是Play Framework。

您不必为VocabularyService定义显式绑定的原因是Guice可以为您找到它:

  

当请求依赖项但未找到依赖项时,它会尝试创建即时绑定。

来自:Guice Bindings

documentation of just-in-time bindings上,您可以看到创建即时绑定的选项为Eligible Constructors@ImplementedBy@ProvidedBy

在我们的例子中,类VocabularyService有一个默认的非私有,无参数的构造函数。