java - 具有嵌入式对象的实体的 Hibernate 标准

标签 java hibernate orm hibernate-criteria

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

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

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();

最佳答案

哦,我想通了...

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 类的对象。

关于java - 具有嵌入式对象的实体的 Hibernate 标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14015310/

相关文章:

java - 映射到同一外键的多个字段的 JPA 映射

python - django 聚合 : sum then average

java - 编译器错误: cannot find symbol,符号: class JSPWriter,位置:类转换器

java - hibernate 和Java

java - 如何获得不同的结果,但在选择中返回另一列?

spring - 如果有@Entity,为什么需要 "annotatedClasses"?

java - 在现有数据库中创建表 sqlite sugar orm

java - 有没有办法在appium中捕获全屏截图

java - 在 Java 中如何等待所有异步调用完成?

java - 内联 css 不适用于使用 java 的电子邮件中的 HTML