工作单元
维护受业务事务影响的对象列表,并协调更改的写入和并发问题的解决。
有关完整描述,请参见 P of EAA 第 184 页
当您从数据库中提取数据时,跟踪您所做的更改非常重要;否则,这些数据将不会写回数据库。同样,您必须插入您创建的新对象并删除您删除的任何对象。
您可以对对象模型的每次更改都更改数据库,但这会导致大量非常小的数据库调用,最终速度非常慢。此外,它要求您在整个交互过程中保持事务打开,如果您有一个跨越多个请求的业务事务,这将不切实际。如果您需要跟踪您已读取的对象以避免不一致的读取,情况会更糟。
工作单元跟踪您在业务事务期间对数据库可能产生影响的所有操作。完成后,它会找出所有需要完成的操作,以根据您的工作更改数据库。