Java 联接表的休眠条件
帮我冬眠大师。。 我有两个关系类,我们称之为A类和B类Java 联接表的休眠条件,java,hibernate,many-to-many,Java,Hibernate,Many To Many,帮我冬眠大师。。 我有两个关系类,我们称之为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="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
*/
}
那么我必须如何创建标准代码呢????对于预期的列表结果列表,我想使用Transformer
谢谢试试这个:criteria.createCriteria(A.class)
.createCriteria("id", "join_between_a_b")
.add(Restrictions.eq("some_field_of_A", someValue));
记住,A和B必须有
id
作为它们的标识符才能使它们加入。我所说的
A的某个\u字段
是指你在A类中喜欢的任何东西,比如name
。您可以对这些类的任何属性进行限制。您尝试了什么?你看过文件了吗?
criteria.createCriteria(A.class)
.createCriteria("id", "join_between_a_b")
.add(Restrictions.eq("some_field_of_A", someValue));