0

我是hibernate的新手,我正在使用hibernate编写一个程序,(数据库使用2个表)这段代码对数据库中的两个表执行基本的创建、更新、删除操作

我的问题是我不知道如何执行操作,以便将一张表中的一条记录剪切并粘贴为第二张表中的新行。是否有休眠命令可以这样做?!或者你是如何做到这一点的?我正在使用会话工厂。此外,这些表在结构上是相同的,两个表之间不存在外键关系(所以基本上映射也不起作用)任何帮助将不胜感激

4

1 回答 1

0

我知道没有用于 cut-n-paste 的内置 Hibernate 命令。Hibernate 只是为此提供 HQL。

你应该:

  1. 使用 Hibernate 检索实体;
  2. 将它们转换为所需的其他实体类型。手动,是的。
  3. 通过 保存新实体session.save
  4. 通过 删除旧实体session.delete

笔记

  1. 如果您要为大量记录执行此操作,那么这种简单的算法就不会高效。对于高性能批量保存/删除操作,您的选择StatelessSession
  2. 首先保存,然后才删除,这样如果您的应用程序在两者之间崩溃,则不会丢失任何数据。
  3. 如果禁止这些实体出现在两个表中,请不要忘记将其设为事务性。
于 2013-07-25T19:17:07.223 回答