有没有办法在Hibernate中访问子域?

时间:2011-07-14 20:54:57

标签: java hibernate orm

有没有办法使用fieldName.subFieldName的行语法访问Hibernate实体对象中字段内的字段?

我意识到你可以通过使用criteria.createCriteria("fieldName")来实现这一点,然后在子字段中添加限制或其他内容,但我想知道是否有更简洁的方法来实现这一点。

1 个答案:

答案 0 :(得分:1)

使用别名。

来自documentation

  

还有一种在某些情况下有用的替代形式:

List cats = sess.createCriteria(Cat.class)
    .createAlias("kittens", "kt")
    .createAlias("mate", "mt")
    .add( Restrictions.eqProperty("kt.name", "mt.name") )
    .list();