StringBuffer hql = new StringBuffer(""); hql.append(" from Cat as cat left outer join cat.mate as mat "); Session currentSession = getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query = currentSession.createQuery(new String(hql)); List<Cat> cats = query.list(); // 重複した要素が取得される。 return cats; StringBuffer hql = new StringBuffer(" select distinct cat "); // distinctをつける。 hql.ap