Java 如何在hibernate条件上使用联接列?
我有3个实体通过OneTONE关系加入。我的目标是使用hibernate标准获取实体,其中Java 如何在hibernate条件上使用联接列?,java,mysql,hibernate,Java,Mysql,Hibernate,我有3个实体通过OneTONE关系加入。我的目标是使用hibernate标准获取实体,其中match.status!=空。如何告诉hibernate不要将algo实体加入到结果中,应该是(pick.algo=null) 条件查询: public List<Pick> getPicksHistory(){ Criteria criteria = session.createCriteria(Pick.class); criteria.add(Restrictions
match.status!=空
。如何告诉hibernate不要将algo
实体加入到结果中,应该是(pick.algo=null)
条件查询:
public List<Pick> getPicksHistory(){
Criteria criteria = session.createCriteria(Pick.class);
criteria.add(Restrictions.isNotNull("match.status"));
return criteria.list();
public List getpickstory(){
条件=session.createCriteria(Pick.class);
添加(Restrictions.isNotNull(“match.status”);
返回条件。list();
}您可以添加别名并将您的条件应用于别名
Criteria criteria = session.createCriteria(Pick.class);
criteria.createAlias("match", "match", JoinType.INNER_JOIN); //<---
criteria.add(Restrictions.isNotNull("match.status"));
Criteria=session.createCriteria(Pick.class);
createAlias(“匹配”、“匹配”、JoinType.INNER\u JOIN)// 从hibernate文档()中:
Criteria criteria = session.createCriteria(Pick.class);
criteria.createAlias("match", "match", JoinType.INNER_JOIN); //<---
criteria.add(Restrictions.isNotNull("match.status"));
Criteria criteria = session.createCriteria(Pick.class);
criteria.createAlias("match", "m");
criteria.add(Restrictions.isNotNull("m.status"));
criteria.setFetchMode("algo", FetchMode.LAZY);
criteria.list();