Java 使用Hibernate条件将投影字段设置为Hibernate中的外键列
如何在hibernate条件查询中将投影字段设置为外键引用Java 使用Hibernate条件将投影字段设置为Hibernate中的外键列,java,hibernate,hibernate-criteria,Java,Hibernate,Hibernate Criteria,如何在hibernate条件查询中将投影字段设置为外键引用 Criteria crt = s.createCriteria(UsersforGrades.class).createCriteria("id", "id1").createCriteria("id1.userId", "id2").add(Restrictions.eq("id2.userId", ue.getUserId())); ProjectionList proList = Projecti
Criteria crt = s.createCriteria(UsersforGrades.class).createCriteria("id", "id1").createCriteria("id1.userId", "id2").add(Restrictions.eq("id2.userId", ue.getUserId()));
ProjectionList proList = Projections.projectionList();
proList.add(Projections.property("gradeId.gradeId"));
例外情况:
迟到的回答:(提出了相同的情况)
在这种情况下,您需要创建别名
criteria.createAlias("gradeId", "gradeId");
criteria.setProjection(Projections.property("gradeId.gradeId"));
criteria.createAlias("gradeId", "gradeId");
criteria.setProjection(Projections.property("gradeId.gradeId"));