我有一个SQL查询,我想将其转换为标准(Hibernate 3.3.2),以将其用于我的持久层。这是查询:
SELECT TYPE_CHANTIER.ID,
TYPE_CHANTIER.CODE,
TYPE_CHANTIER.LIBELLE
FROM TYPE_CHANTIER
INNER JOIN CATEGORIE_CHANTIER
ON TYPE_CHANTIER.ID = CATEGORIE_CHANTIER.TYPE
INNER JOIN CHANTIER
ON CATEGORIE_CHANTIER.ID = CHANTIER.CATEGORIE
WHERE CHANTIER.ID = 26869423;
我已经尝试了很多组合,但没有结果对我有好处......这是我的代码:
public TypeChantier recupererTypeChantier(Integer idChantier) {
TypeChantier retour = null;
if (idChantier != null) {
Criteria criteria = getSession().createCriteria(TypeChantier.class);
// requete
criteria.createAlias("categorieChantiers", "categorieChantiers", JoinType.INNER_JOIN);
criteria.createAlias("categorieChantiers.chantiers", "chantiers", JoinType.INNER_JOIN);
// requete
criteria.add(Restrictions.eq("chantiers.id", idChantier));
// resultat
retour = (TypeChantier) criteria.uniqueResult();
}
return retour;
}
此代码返回java空指针异常