1

如何获取休眠更新后更新了哪些属性?例如,如果我得到

SomeEntity se = new SomeEntity();
getHibernateTemplate().save(se); 

//then in some other method
se.setProp1("some new value");

//then in 3th method
getHibernateTemplate().update(se);

如果您告诉 hibernate 进行动态更新,它将知道女巫属性已更改并仅更新它们。有没有办法获取已更改的内容或检查特定属性是否已更改?

4

1 回答 1

0

结束了在刷新会话之前进行本机 sql 查询以将数据库中的状态与实体中的状态进行比较。

Query query = session.createSQLQuery(
"select t.someProp1 from someTable t where t.id = :entityId")
.setParameter("entityId", entity.getId());
List result = query.list();
于 2013-11-12T18:04:13.197 回答