| 职责 | 记录新增/修改/删除,事务提交时统一持久化 |
|---|---|
| 配合模式 | 仓储(存取)、标识映射(同一对象同一实例) |
| 收益 | 事务边界明确,减少数据库往返 |
提交时机示意(伪代码)
提交时机示意(伪代码)
uow = new UnitOfWork()
order = repo.find(1)
order.addLine(item) // 跟踪修改
repo.save(order)
uow.commit() // 统一计算变更集并写库
// 业务失败:uow.rollback(),不产生部分写入工作单元跨越过长的业务流程会长时间占用事务与连接,应保持短事务。