11

我有一个实体“UserDetails”,它具有以下变量:

  1. 字符串用户 ID
  2. 字符串用户名
  3. UserContact userContact(其中 UserContact 是一个 Embeddable 类)

UserContact 具有以下变量:

  1. 字符串电话号码
  2. 字符串电子邮件
  3. 弦城

获取以下列表的 Hibernate 标准是什么:

userName = 'sam' 和 city = 'New York' 的用户

我尝试了以下操作并得到了运行时异常,它无法识别变量“city”:

List<UserLogin> list = session.createCriteria(UserLogin.class)
    .add(Restrictions.eq("userName","sam"))
    .add(Restrictions.eq("city", "New York"))
    .list();
4

1 回答 1

15

哦,我想通了...

List<UserLogin> list = session.createCriteria(UserLogin.class)
   .add(Restrictions.eq("userName","sam"))
   .add(Restrictions.eq("userContact.city", "New York"))
   .list();

傻,只需要添加'userContact.city'而不是'city',其中userContact是我实体中UserContact类的对象。

于 2012-12-23T22:53:37.243 回答