Hibernate Guru を助けてください..私には 2 つの関係クラスがあります。クラス A と B を呼び出しましょう
@Entity
@Table(name="A")
public class A extends Serializable{
@Id
@Column(name="a_id")
private int id;
@Column(name="a_name")
private String name;
/*
*.....Setter and Getter
*/
}
@Entity
@Table(name="B")
public class B extends Serializable{
@Id
@Column(name="b_id")
private int id;
@ManyToMany(
fetch= FetchType.EAGER,
targetEntity=package.A.class,
cascade={CascadeType.ALL}
)
@JoinTable(
name="B_A",
joinColumns=@JoinColumn(name="b_id"),
inverseJoinColumns=@JoinColumn(name="a_id")
)
@Fetch(FetchMode.SUBSELECT)
private List<A> list;
/*
*.....Setter and Getter
*/
}
Hibernate は 3 つのテーブル A、B、および B_A を生成します。テーブル B_A には 2 つの外部キーがあり、主キー テーブル A の外部キーが 1 つ、主キー テーブル B の外部キーがもう 1 つ、
クエリのように、テーブル A からデータを選択したい:
select * from A a inner join B_A ba on ba.a_id = a.id inner join B b on b.b_id = ba.b_id where b.id in(?, ?, ?, ?)
では、どのように基準コードを作成する必要がありますか???? 期待されるリストの結果リストには、トランスフォーマーを使用したいと考えています。
ありがとう