scala - 如何在 playframework2.5 的特征中正确注入 DBApi?
问题描述
我正在升级到 play framework 2.5,正如 play 所提到的,以下代码需要使用依赖注入
trait DataSource {
import play.api.Play.current
def dataSource = DB.getDataSource()}
是否可以将 DI 与 trait 一起使用?
解决方案
不是和是的;)。
不,因为您至少需要一个实现。
如果你有一个实现,唯一的问题是它必须是一个简单的类(不是案例类)。
class MyDataSource @Inject()(val dataSource: PlayDataSource) extends DataSource
你可以注入任何你想要的东西,@Inject()(...)
例如覆盖trait
.
推荐阅读
- javascript - How do I embed javascript into an IIS UrlRewrite rule?
- unit-testing - 使用 GTEST / GMOCK 对嵌入式源代码进行单元测试
- c - 拆分服务器进程的最佳方法
- android - 工具栏中的搜索图标不可见
- xpath - Xpath 中这个 BeautifulSoup 表达式的等价物是什么?
- windows - FFMPEG xstack无法识别输入
- linux-kernel - 从源代码编译 Android 内核模块
- wordpress - Wordpress 产品页面自动更改为每行 1 个产品
- c - 为什么我们不能为结构的成员设置默认值?
- c++ - 在 C++ 中使用成员函数的轻量级方法