问题描述
我有两个表 Student 和 Address。一个学生可以有多个地址。 实体看起来像这样
@Entity @Table(name = "STUDENT")
public class Student {
@Column(name = "STUDENT_ID") Integer studentId;
@Column(name = "FirsT_NAME") String fName;
@Column(name = "LAST_NAME") String LName;
}
@Entity @Table(name = "ADDRESS")
public class Address {
@Column(name = "ADDRESS_ID") Integer addressId;
@Column(name = "STREET_NAME") String street_name;
@ManyToOne(fetch = FetchType.LAZY,cascade = CascadeType.ALL)
@JoinColumn(name = "STUDENT_ID")
private Student student;
}
我需要使用 JPA Criteria 来获取基于学生 fName 和 LName 的所有地址。可以是INNER JOIN,也可以是Address表的子查询。
CriteriaBuilder builder = em.getCriteriaBuilder();
CriteriaQuery<Address> criteriaQuery = builder.createquery(Address.class);
Root<Address> fromAddress = criteriaQuery.from(Address.class);
//Can be a JOIN or Sub-Query.
em.createquery(criteriaQuery).getResultList();
要求现在只加载地址表数据。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)