Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在hibernate中将同一序列生成器链接到两个表?_Hibernate - Fatal编程技术网

如何在hibernate中将同一序列生成器链接到两个表?

如何在hibernate中将同一序列生成器链接到两个表?,hibernate,Hibernate,我有两张桌子,叫做学生和学生历史。学生id是使用生成器生成的。当我插入到student中时,我希望使用相同的id将相同的记录插入到历史表中。我如何实现这一点 问候,, Karthik。在映射中,您将学生和学生历史记录之间的关系定义为1:1或1:n关系,并定义用于插入/更新的级联。对于student history表中的student外键,使用元素(在student映射中定义) 例如(这里是1:n关系),您在学生的映射中执行: <bag name="studentHistory" casca

我有两张桌子,叫做学生和学生历史。学生id是使用生成器生成的。当我插入到student中时,我希望使用相同的id将相同的记录插入到历史表中。我如何实现这一点

问候,,
Karthik。

在映射中,您将学生和学生历史记录之间的关系定义为1:1或1:n关系,并定义用于插入/更新的级联。对于student history表中的student外键,使用
元素(在student映射中定义)

例如(这里是1:n关系),您在学生的映射中执行:

<bag name="studentHistory" cascade="all" ... >
  <key column="studentId" not-null="true">
  </key>
  <one-to-many class="com.xxx.StudentHistory"/>
</bag>   


然后,当您更新/插入学生实例时,hibernate会自动处理历史记录中的外键。

您想将所有数据复制到另一个历史记录表中,对吗?为什么要使用相同的顺序?