表A

问题描述

我的代码中有一个关系,其中一个主对象将大量其他对象链接在一起。由于链接在一起的对象数量众多,因此我希望使用一个主对象,使诸如“ Project”这样的对象保持简单,并且仅包含两个字段“ ProjectId”和“ Active”标志。然后,我想仅通过“ ProjectId”链接到其他表。

项目表将分为两列,“项目ID”和“活动”。

其他表将包含它们所需的内容,但也包含用于链接目的的“ ProjectId”。

然后在代码中,我可以知道这些表是通过共享的ProjectId列链接到同一项目的。

我希望能够仅通过Project对象来检索和更新所有对象。

我会发布我的代码,但是这样做不合适。但是,这是即时通讯目前存在问题的一个较小示例。保存有效,但检索无效。

@Entity
@Table(name = "Project")
public class Project{

    @Id
    @Column(name = "ProjectId",columnDeFinition = "UNIQUEIDENTIFIER")
    private UUID id;

    @OnetoOne(fetch = FetchType.EAGER,cascade = CascadeType.ALL)
    @JoinColumn(
              name = "ProjectId",referencedColumnName = "ProjectId",nullable = false,insertable = false,updatable = false)
    @MapKeyColumn(name = "ProjectId")
    private ExtraTable extraTable ;
//Getters setters exc... 
}

    @Entity
@Table(name = "ExtraTable")
public class ExtraTable {

     @Id
     @GeneratedValue(strategy = GenerationType.AUTO)
     @Column(name = "Id",unique = true)
     @Type(type = "uuid-char")
     private UUID id;


     @Column(name = "ProjectId",columnDeFinition = "UNIQUEIDENTIFIER")
     @Type(type = "uuid-char")
     private UUID projectId;
//Geters,setters,hash etc....

}

我的问题是,是否有人可以向我提供有关如何使它工作的建议,以及从逻辑角度来看这是否有意义?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)