基本用法

典型的单例类:

import javax.inject._
@Singleton
class BurgersRepository {
    // implementation goes here
}

另一个类,需要访问第一个。

import javax.inject._
class FastFoodService @Inject() (burgersRepository: BurgersRepository){
    // implementation goes here
    // burgersRepository can be used
}

最后一个控制器使用最后一个。注意,因为我们没有将 FastFoodService 标记为单例,所以每次注入它时都会创建它的新实例。

import javax.inject._
import play.api.mvc._
@Singleton
class EatingController @Inject() (fastFoodService: FastFoodService) extends Controller {
    // implementation goes here
    // fastFoodService can be used
}