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
Java 表/子类映射策略:切换表?_Java_Hibernate_Jpa_Orm - Fatal编程技术网

Java 表/子类映射策略:切换表?

Java 表/子类映射策略:切换表?,java,hibernate,jpa,orm,Java,Hibernate,Jpa,Orm,在每个具体子类的表设置中,是否可以将行/对象从一个表切换到另一个表?那怎么办 例如,我们有一个基类Person.java和pk Person\u id。 然后,我们有两个子类Police.java和Firefighter.java,这两个子类都由对应的表PERSON和Firefighter用主键PERSON_id再次映射 现在假设一名警官成为消防员或副维卡,这将如何工作?这能在hibernate中工作吗?有任何示例吗?不同表中的所有公用行必须相同。在该策略中,必须复制行。我发现的唯一有趣的例子是

在每个具体子类的表设置中,是否可以将行/对象从一个表切换到另一个表?那怎么办

例如,我们有一个基类Person.java和pk Person\u id。 然后,我们有两个子类Police.java和Firefighter.java,这两个子类都由对应的表PERSON和Firefighter用主键PERSON_id再次映射


现在假设一名警官成为消防员或副维卡,这将如何工作?这能在hibernate中工作吗?有任何示例吗?

不同表中的所有公用行必须相同。在该策略中,必须复制行。我发现的唯一有趣的例子是在

根据研究人员的说法,这一策略的支持是可选的,他们说在Glassfish中是不可用的

多态性没有得到很好的支持,因此您的用例不会得到很好的满足:在创建一个全新的消防员之前,您必须将您的警察从警察中移除

如果您想在不同实体的不同行之间切换,我猜您无法找到另一种策略所需的内容:

在联接子类策略中,所有公共字段都必须映射到基表中 在“每类一个表”层次结构策略中,所有数据都位于一个带有鉴别器列的表中