我正在使用scala playframework开发一个项目,我隐式声明了数据库连接会话,这样我就可以读/写mysql数据库,而不必每次都调用数据库会话。这是一个好习惯吗?
有没有权衡?
由于
答案 0 :(得分:1)
使用隐式会话当然更可取,因此框架可以为您管理这些细节。唯一真正的缺点是需要(implicit s: Session)
所有方法,但这可能是worked around。
在测试期间,还可以使事物更“可插拔”。
答案 1 :(得分:0)
通过implicits传递“上下文”信息是一种合理的做法。您甚至可以通过Scala标准库中传递给期货的ExecutionContext
来看到这一点。
它肯定比单个对象中的全局值或伪全局值更好,并且在测试时更容易模拟。