hibernate基礎ツールfindBySQL学習


public List> findBySQL(String sql,Map param,int start,int max) {
        log.debug("finding List by hql");
        try {
      
       // map map key SQLQuery query
=sessionFactory.getCurrentSession().createSQLQuery(sql); query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); // param if(param!=null) { for (Map.Entry entry : param.entrySet()) { Object obj = entry.getValue(); // , hibernate list if(obj instanceof Collection>){ query.setParameterList(entry.getKey(), (Collection>)obj); }else if(obj instanceof Object[]){ query.setParameterList(entry.getKey(), (Object[])obj); }else{ query.setParameter(entry.getKey(), obj); } } } query.setFirstResult(start);// if(max!=0){ query.setMaxResults(max);// } List> results = query.list(); log.debug("find list successful, result size: " + results.size()); return results; } catch (RuntimeException re) { log.error("find list failed", re); throw re; } }

注意配列が入力された場合intは属していません
Object[]   
Collection>

転載先:https://www.cnblogs.com/L-a-u-r-a/p/7050001.html