Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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
Jpa 面向对象设计与变更日志函数的数据模型_Jpa_Data Modeling_Relationship - Fatal编程技术网

Jpa 面向对象设计与变更日志函数的数据模型

Jpa 面向对象设计与变更日志函数的数据模型,jpa,data-modeling,relationship,Jpa,Data Modeling,Relationship,:EJB3、JPA EcipseLink和Oracle数据库 应用程序有两个实体:组和个人。有一对多的关系 要求是,必须保存组和人员的每次更改,以便以后滚动或显示 第一个想法: 将更改/创建的id和时间戳作为组和个人的复合主键。 每次更改都将创建一个具有相同id和新时间戳的新对象。例如,一个已更改的组,然后创建一个新组。但群体与人的关系没有改变。这里有一个问题:一对多的结构将崩溃!。现在,一个人将该关系添加到具有相同id的两个组 第二个想法: 对于Group和Person,创建另外两个实体Gro

:EJB3、JPA EcipseLink和Oracle数据库

应用程序有两个实体:组和个人。有一对多的关系

要求是,必须保存组和人员的每次更改,以便以后滚动或显示

第一个想法:

将更改/创建的id和时间戳作为组和个人的复合主键。 每次更改都将创建一个具有相同id和新时间戳的新对象。例如,一个已更改的组,然后创建一个新组。但群体与人的关系没有改变。这里有一个问题:一对多的结构将崩溃!。现在,一个人将该关系添加到具有相同id的两个组

第二个想法:

对于Group和Person,创建另外两个实体GroupArchive和PersonArchive。在组和个人中仅显示最新信息。任何更改都将复制并保存到存档实体。组和组之间存在一对多关系。对于Person和PersonArchive也一样

我的想法可以实现吗?有谁有更好的主意吗