在我的服务层中我想插入transaction-ally如果插入比所有三行都插入数据库!!
服务层是
def service(userRow, addressDao, contactDao) = DB.withTransaction { implicit session =>
userDao.insert(userRow)
addressDao.insert(addressRow)
contactDao.insert(contactRow)
}
我的dao图层是
def insert(userRow: UsersRow) = DB.withTransaction { implicit session =>
user += userRow
}
答案 0 :(得分:1)
将插入方法更改为
def insert(userRow:UsersRow)(implicit session: Session)={
user+=userRow
}
会话将被传播,并且所有插入都使用相同的会话。如果会话正在使用事务,那么它将在同一事务中完成。