【发布时间】:2011-11-03 09:37:00
【问题描述】:
在 hibernate 中,我们可以通过多种不同的方式更新 DB 中的实体。 如果我们在打开的会话中更改附加的实体,然后提交更改(通过关闭会话),所有更改都将保存在数据库中。但是,例如,特定实体有很多字段。我们只想改变其中的几个。然后,hibernate 将生成查询,它将更新实体的 所有 字段:已更改和未更改。因此,hibernate 生成的更新查询存在开销。如果我们知道,对象的哪些字段将被更改,那么创建导航 SQL 查询会更好,我们只能更新指定的字段吗?有什么好处和坏处?
【问题讨论】: