テーブルparent、childがあり、child(as 子1)⇒parent(as 親)⇒child(as 子2) という結合を行った状況において、親がもつ子2リストに子1で取得したEntityが含まれる場合、子1が重複して取得されてしまいます。*To*EntityMapperImpで重複して追加することが原因に思えます。
作成したテーブルは以下です。
create table parent (
id number,
name varchar2(20),
primary key (id)
);
create table child (
id number,
parent_id number,
name varchar2(20),
primary key (id),
foreign key (parent_id) references parent (id)
);
insert into parent values (1, '親その1');
insert into child values (1, 1, '子その1');
insert into child values (2, 1, '子その2');
実行したメソッドは以下です。
List<Child> childList =
jdbcManager.from(Child.class).innerJoin("parent").innerJoin(
"parent.childList").id(1).getResultList();
childList.get(0).parent.childList で子その1が重複します。