在JPA中一次更新所有表数据

时间:2013-01-20 21:23:42

标签: java hibernate jpa-2.0

是否可以在一个查询中更新所有表格数据?

我有一个数据库表Person和相应的Entiry PersonEntity,我可以在List personAll等列表中获取所有Person数据vi和JPA。

我在personAll实例上有几个CRUD操作,我希望一方面使用Hibernate JPA将所有这些更改反映到数据库

换句话说,我想将Person Table的内容替换为personAll实例的新内容?

实际上这个问题的长解决方法是执行几次插入,删除和更新操作。但应该有一种简单的方法吗?

当有两个表时可以做类似的事情Shool Student表如果eash之间有OneToMany关系吗? Hibernate JPA value removing OneToMany relation

由于

1 个答案:

答案 0 :(得分:0)

这取决于您的表格中有多少行。

如果将所有行加载到Hibernate会话中并根据需要修改返回的实例,则在刷新会话时,Hibernate会自动将任何更改保存到数据库。

它取决于大小的原因是,如果你将一个巨大的表的内容加载到Hibernate会话中,你冒着内存错误的风险,即使你没有内存不足,刷新也会非常慢会话中的实体要检查修改。