Java 在两个不同但相同的表中插入记录,Hibernate?

Java 在两个不同但相同的表中插入记录,Hibernate?,java,mysql,database,hibernate,Java,Mysql,Database,Hibernate,我有两个对应于两个类的表 class temp{ @Id int x; String name; } class perm{ @Id int x; String name; } 比如临时客户和永久客户 两者完全相同 我想将记录从临时客户插入永久客户 但使用hibernate执行此操作会在perm_customer中生成一个新id,并复制所有其他记录。我还需要perm_customer中temp_客户的相同id。perm表将有自己的主键,并添加与temp的外键关系。 下表是temp和per

我有两个对应于两个类的表

class temp{
@Id
int x;
String name;

}

class perm{
@Id
int x;
String name;

}
比如临时客户和永久客户

两者完全相同

我想将记录从临时客户插入永久客户


但使用hibernate执行此操作会在perm_customer中生成一个新id,并复制所有其他记录。我还需要perm_customer中temp_客户的相同id。

perm表将有自己的主键,并添加与temp的外键关系。 下表是temp和perm的结构

class temp{
@Id
int x;
String name;

}

class perm{
@Id
int y;

@OneToOne
@JoinColumn(name="x")
temp t;

String name;

}

它接收一个新的ID仅仅是因为您有一个ID生成器。如果删除ID生成,则可以显式设置ID字段


如果您在其他情况下仍然需要唯一的ID,那么从全局序列(或DB支持的任何序列)提取该ID应该很容易。

显示您如何在perm_customer表中保存记录的代码。为什么您需要两个具有相同数据的不同表?您是否尝试创建外键关系?您的问题是“我想将记录从临时客户插入永久客户”您想将数据从一个表复制到另一个表?还是想一次插入两个表?@yogeshprajapati我想将数据从一个表复制到另一个表。