我也在使用sse-guice库,以防万一。
所以我有一个类似于:
的UserService类class UserService {
val datasource = DbHelper.getDataSource()
val database = DBHelper.getDb(datasource)
val userDao = new UserDao()
def getUserById(userId: Int): User = {
return userDao.getById(userId)
}
}
所以现在在我的MVC控制器类中,我想注入我的UserService。
我如何创建一个Guice模块来连接这些依赖项?
UserService => Singleton
datasource => singleton
database => singleton
actionDao => singleton
另外,我是否必须重构我的UserService并使用特征或抽象类?
我应该为每个XXXService创建一个单独的模块,还是应该只创建一个像ServicesModule这样的模块?
类似于:
class ServicesModule extends ScalaModule {
def configure() {
bind[UserService].to[UserServiceImpl]
}
}
但我不确定如何正确连接依赖项。