如何解决在接口方法中获取当前事务句柄
我试图通过接口方法访问当前的jdbi事务handle
,其目的是避免将handle
作为参数传递给接口的方法,从而保持接口,无任何实现细节。下面的示例演示了预期的用例。
我有一个Userapplicationservice
管理正在使用的交易
class Userapplicationservice(val jdbi: jdbi,val userRepository: UserRepository) {
fun changeUserName() {
jdbi.useTransaction<Exception> {
userRepository.updateName("peter pan")
}
}
}
interface UserRepository {
fun updateName(name: String)
}
我有PostgresUserRepository
接口的实现
class PostgresUserRepository: UserRepository {
override fun updateName(name: String) {
val handle: Handle = getHandle() // some method to get the handle of the transaction,this is what I need help solving
handle.execute("...") // set new name of user using the handle
}
}
任何有关如何解决此问题的建议将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。