今天在阅读《精通 Hibernate》的时候读到了这样两个词“脏对象”、“脏检查”,想来想去,从字面和上下文来看都无法猜出其确切意义,于是去问百度了。在百度搜索“脏对象”,发现没有适合的,于是怀疑这个名字是翻译过来的,搜索“Hibernate dirty object”,结果是没有搜出确切匹配的,不过我见到了个可能可以解答我的问题的新词“脏数据”,该项目是个 pdf 文件,将其下载后打开,看到里边这样写: 何谓脏数据(Dirty Data)? 这里的“脏”可能有些误导,脏数据并非废弃或者无用的数据,而是指一个数据对象所携带的信息发生了改变之后的状态。 如我们从数据库中读取了一个 TUser 对象: Transaction tx = session.beginTransaction(); TUser user = (TUser)session.load(TUser.class, new Integer(1)); // 此时 user 对象处于有数据库读出的原始状态 user.setAge(30); // 此时 user 对象所携带的信息发生了变化,成为了所谓的“脏数据” tx.commit(); 看到这里算是明白了,既然“脏数据”是属性被修改了的对象,那么“脏检查”就大概是检查一个对象是否被修改了吧。 相关文章: 2021-06-19 2022-01-13 2022-12-23 2022-12-23 2022-12-23 2022-01-24 2022-01-14 2021-08-23