Java Hibernate会话.update()与更新查询?
Hi如果要更新行的某些特定列,那么我应该在hibernate中使用更新查询,还是只使用hibernate的Java Hibernate会话.update()与更新查询?,java,hibernate,Java,Hibernate,Hi如果要更新行的某些特定列,那么我应该在hibernate中使用更新查询,还是只使用hibernate的session.update()方法。刚知道 @org.hibernate.annotations.Entity( dynamicUpdate = true 注释如果设置,我可以更新特定列。我以前没有用过这个,所以我只想知道是否有使用这个的规范。只是需要你的帮助来做出决定。哪种方法更好 关闭动态会话更新后,Hibernate将缓存所有实体的所有可能查询。所以Hiberna
session.update()
方法。刚知道
@org.hibernate.annotations.Entity(
dynamicUpdate = true
注释如果设置,我可以更新特定列。我以前没有用过这个,所以我只想知道是否有使用这个的规范。只是需要你的帮助来做出决定。哪种方法更好 关闭动态会话更新后,Hibernate将缓存所有实体的所有可能查询。所以Hibernate不必在每次更新实体时都生成SQL 当它打开时,Hibernate总是在请求时生成SQL查询,而不是缓存它。因此,对于您的数据库来说,它更轻了,但是对于Hibernate来说,它变得更重了 什么时候应该使用Hibernate动态更新?如果您有一个包含大量列的大型表,那么缓存所有实体的所有查询将比平常花费更多的内存。因此,您可以启用动态更新以提高性能。另外,如果您正在调试,动态更新将为您提供更可读的查询,因为只有修改过的列才会出现在update语句中 您应该使用更新查询还是会话更新?更新查询的可读性较低,并且更难维护(例如,如果字段名已更改,则必须更改所有查询,而会话更新不会受到影响)