@OneToMany関係にいくつか問題があります。 最初のエンティティは何らかの種類の商品を表します。私は「AR_GROUPリストから選択リスト」のような選択作るときHibernate @OneToMany関係
@Entity(name = "ARTIQULE")
public final class ArtiquleEntity extends CustomEntity{
@Id
@Column(name = "ID")
public Long id;
@NotNull
@Column(name = "METRIC_ID")
public Long metricId;
@NotNull
@Column(name = "STATUS_ID")
public Long statusId;
@NotNull
@Column(name = "NAME")
public String name;
@NotNull
@Column(name = "SHORT_NAME")
public String shortName;
@NotNull
@ManyToOne
@JoinColumn(name = "GROUP_ID")
public ArtGroupEntity artGroup;
}
第二には、商品
@Entity(name = "AR_GROUP")
public final class ArtGroupEntity extends CustomEntity {
@Id
@Column(name = "ID")
public Long id;
@NotNull
@Column(name = "GROUP_ID")
public Long groupId;
@NotNull
@Column(name = "STATUS_ID")
public Long statusId;
@NotNull
@Column(name = "NAME")
public String name;
@NotNull
@Column(name = "L")
public Integer left;
@NotNull
@Column(name = "R")
public Integer right;
@NotNull
@OneToMany(mappedBy = "artGroup", fetch = FetchType.EAGER)
public List<ArtiquleEntity> artiquleEntities;
}
のグループ化されています。 グループごとにHibernateが選択を作成し、なぜ外部結合を使用しないのですか? または可能ではありません。
Hibernate: select artgroupen0_.ID as ID1_0_, artgroupen0_.GROUP_ID as GROUP_ID2_0_, artgroupen0_.L as L3_0_, artgroupen0_.NAME as NAME4_0_, artgroupen0_.R as R5_0_, artgroupen0_.STATUS_ID as STATUS_I6_0_ from AR_GROUP artgroupen0_
Hibernate: select artiquleen0_.GROUP_ID as GROUP_ID2_1_0_, artiquleen0_.ID as ID1_1_0_, artiquleen0_.ID as ID1_1_1_, artiquleen0_.GROUP_ID as GROUP_ID2_1_1_, artiquleen0_.METRIC_ID as METRIC_I3_1_1_, artiquleen0_.NAME as NAME4_1_1_, artiquleen0_.SHORT_NAME as SHORT_NA5_1_1_, artiquleen0_.STATUS_ID as STATUS_I6_1_1_ from ARTIQULE artiquleen0_ where artiquleen0_.GROUP_ID=?
Hibernate: select artiquleen0_.GROUP_ID as GROUP_ID2_1_0_, artiquleen0_.ID as ID1_1_0_, artiquleen0_.ID as ID1_1_1_, artiquleen0_.GROUP_ID as GROUP_ID2_1_1_, artiquleen0_.METRIC_ID as METRIC_I3_1_1_, artiquleen0_.NAME as NAME4_1_1_, artiquleen0_.SHORT_NAME as SHORT_NA5_1_1_, artiquleen0_.STATUS_ID as STATUS_I6_1_1_ from ARTIQULE artiquleen0_ where artiquleen0_.GROUP_ID=?
Hibernate: select artiquleen0_.GROUP_ID as GROUP_ID2_1_0_, artiquleen0_.ID as ID1_1_0_, artiquleen0_.ID as ID1_1_1_, artiquleen0_.GROUP_ID as GROUP_ID2_1_1_, artiquleen0_.METRIC_ID as METRIC_I3_1_1_, artiquleen0_.NAME as NAME4_1_1_, artiquleen0_.SHORT_NAME as SHORT_NA5_1_1_, artiquleen0_.STATUS_ID as STATUS_I6_1_1_ from ARTIQULE artiquleen0_ where artiquleen0_.GROUP_ID=?
お返事ありがとうございます。
のように私のオプションを選択一見に私は問題が選択を実行した後に行わなければならないORマッピングになると思うが、 '変更 – Jens
@ ManyToOne'para '@ManyToOne(optional = false)'と何が起こるかを確認 – Dherik