两个表中的Hibernate限制

时间:2013-08-30 13:21:07

标签: hibernate

我有两个实体......

1.用户

 private Long id;
 private String name;
 private String lname;
 private Phone phone;

2.Phone

  private Long id;
  private String number;
  private String ddd;

我需要通过限制(如果可能)在hibernate中进行搜索,以获得用户中phone.number的所有结果。我知道phone.id的工作。但其他var不起作用。

有人如何制作这个?

1 个答案:

答案 0 :(得分:2)

您需要执行createAliasCriteria的方式来执行加入)。检查this manual

Criteria c = session.createCriteria(User.class, "user");
c.createAlias("user.phone", "phone"); // inner join by default
c.add(Restrictions.eq("phone.number", "43523452"));
c.list();