代码如下: 

  public List<T> getForList(T t) {

        List<T> tList = new ArrayList<T>();
        StringBuffer sb = new StringBuffer(
                "select rm,rm2.name  from T rm,T2 rm2 Where 1=1 and rm.id=rm2.id ");
        StringBuffer buffer = new StringBuffer(
                "select count(*) from T rm,T2 rm2 Where 1=1 and rm.id=rm2.id ");
        try {
            if (null != rm.getname() || ("").equals(rm.getname())) {
                sb.append("and rm.name like '%" + t.getname() + "%' ");
                buffer.append("and rm.name like '%" + t.getname() + "%' ");
            }
          //  sb.append(" order by rm.id ");
            List<T> rmList = (List<T>) super.showPage(sb
                    .toString(), buffer.toString(), rm.getPage(), rm
                    .getPagesize());
            if (rmList.size() != 0) {
                Object objTotal = rmList.get(1);
                Iterator it = ((Iterable<Throwable>) rmList.get(0)).iterator();
                int i=0;
                while (it.hasNext()) {
                    i++;
                    Object[] obj = (Object[]) it.next();
                    RgMethod rm_ = (RgMethod) obj[0];
                    String name = (String) obj[1];
                    rm_.setname(name);
                    rm_.setTotal(Integer.valueOf(objTotal.toString()));
                    tList.add(rm_);
                }
                rmList=null;
                System.out.println(i);
            }
        } catch (Exception e) {
            logger.error(ErrorTrace.getTrace(e));
            return null;
        }
        return tList;

    }


经分析后增加上排序语句【sb.append(" order by rm.id ");】,查询结果通过

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐