何谓脏数据(Dirty Data)?
这里的“脏”可能有些误导,脏数据并非废弃或者无用的数据,而是指一个数据对象所携带的信息发生了改变之后的状态。
如我们从数据库中读取了一个 TUser 对象:
Transaction tx
=
session.beginTransaction();
TUser user = (TUser)session.load(TUser. class , new Integer( 1 ));
// 此时 user 对象处于有数据库读出的原始状态
user.setAge( 30 );
// 此时 user 对象所携带的信息发生了变化,成为了所谓的“脏数据”
tx.commit();
TUser user = (TUser)session.load(TUser. class , new Integer( 1 ));
// 此时 user 对象处于有数据库读出的原始状态
user.setAge( 30 );
// 此时 user 对象所携带的信息发生了变化,成为了所谓的“脏数据”
tx.commit();
看到这里算是明白了,既然“脏数据”是属性被修改了的对象,那么“脏检查”就大概是检查一个对象是否被修改了吧。