0
幫我休眠大師.. 我有2個關係類,姑且稱之爲類和B類Hibernate的標準連接表
@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",
[email protected](name="b_id"),
[email protected](name="a_id")
)
@Fetch(FetchMode.SUBSELECT)
private List<A> list;
/*
*.....Setter and Getter
*/
}
Hibernate會生成3個表A,B,和B_A。與表B_A有2個外鍵,主鍵表A和主鍵表B中的一個再外鍵的外鍵,
我想從表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(?, ?, ?, ?)
所以標準代碼如何創建?和期望的列表結果列表我想使用Transformer。
感謝
你有什麼試過?您是否閱讀過文檔? http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#querycriteria-associations – 2012-07-16 12:25:02