将hibernate查询结果集映射到一个没有配置对象映射的vo类

public List queryBySQLPagenation( String SQL,String str,Class targetClass,int start,int max ,Object... params) {
        //setResultTransformer这个是重点
        Query q=getSession().createSQLQuery(SQL).setResultTransformer(Transformers.aliasToBean(targetClass));
        if (params != null && params.length>0) {
            int index = 0;
            for (int i = 0; i < params.length; i++) {
                if (params[i] instanceof Object[]) {
                    Object[] oarr = (Object[]) params[i];
                    for (int j = 0; j < oarr.length; j++) {
                        q.setParameter(j + index, oarr[j]);
                    }
                    index = index + oarr.length;
                } else {
                    q.setParameter(i, params[i]);
                    index = index + 1;
                }
            }
        }
        q = q.setFirstResult(start).setMaxResults(max);
        return q.list();
    }


你可能感兴趣的:(将hibernate查询结果集映射到一个没有配置对象映射的vo类)