我似乎无法使用引用Embedded类中的属性的条件创建查询。当我使用“entity.embedded.property”时,它失败了。如果我为自己创建一个“entity.embedded.property”的别名,那么查询就可以工作......任何tipes都将受到赞赏......
答案 0 :(得分:6)
您无法直接访问嵌入对象的属性。您应该为它创建一个别名。像
Criteria crit = session.createCriteria(XYZ.class, "entity");
crit.setProjection(Projections.property("id"));
crit.createAlias("entity.embedded", "embeddedObj");
crit.add(Restrictions.eq("embeddedObj.property1", "propert1_value"));