是否可以在每次动作时将持久化上下文注入scala actor?我有一个双Java/Scala spring应用程序,我使用spring注释将我的Java服务和方法标记为事务性.我想在我的scala actor中使用类似的功能.也就是说,演员应该在每次响应消息时在单个事务中操作.有没有人尝试类似的东西或有这样的事情的例子?
为什么不通过Dao trait注入actor本身的持久化访问来封装.这样你就可以拥有一个与持久性机制本身分离的持久性actor:
class DaoActor(val dao: Dao) extends Actor {
def act() = {
loop {
react {
case SaveTrade(trade) => dao.save(trade)
case ReadTrades(date) => dao.lookup(date) }
}
}
}
Run Code Online (Sandbox Code Playgroud)
更重要的是,您Dao可以用Java编码,因此您可以在@Transactional那里添加注释.