如何为嵌套实体构建 Hibernate 标准

还在学习

这是非常倾销的问题。但我需要问一下。我们如何构建休眠复杂标准?我写了两个简单的类,一个类引用了另一个类。这是我的课

public class CourseEntity extends BaseEntity {

    @OneToOne
    private CourseTypeEntity type;

    @OneToOne
    private CompanyEntity company;
}

public class CourseTypeEntity {

    @Column
    private String code;

    @Column
    private String name;
}

并试图建立这样的标准。

crit = session.createCriteria(CourseEntity.class, "c");
        crit.add(Restrictions.eq("c.id", 1l));
        crit.add(Restrictions.eq("c.type.id", 1l));
        crit.add(Restrictions.eq("c.company.id", 1l));
        crit.add(Restrictions.like("c.company.name", "oracle"));

是获取 company.name 过滤器的正确方法,只要添加最后一行,它就会抛出异常。

有人可以帮助解决这个问题或任何其他替代方法来做同样的事情吗?

谢谢

亚历克斯

尝试添加别名:

crit = session.createCriteria(CourseEntity.class, "c").createAlias("c.company", "company");
        crit.add(Restrictions.eq("c.id", 1l));
        crit.add(Restrictions.eq("c.type.id", 1l));
        crit.add(Restrictions.eq("company.id", 1l));
        crit.add(Restrictions.like("company.name", "oracle"));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章