手动分页

public Object getTradeChinaDataTab(String sql ,int page){
        Query query = entityManager.createNativeQuery(sql);
        List<?> objecArraytList = query.getResultList();
        List<Map<String,Object>> list = new ArrayList<>();
        for(Object ob: objecArraytList){
            Object[] obj = (Object[])ob;
            Map<String,Object> mapf = new HashMap<>();
                mapf.put("value", Double.parseDouble(String.valueOf(obj[0])));
                mapf.put("country", String.valueOf(obj[1]));    
                mapf.put("province", String.valueOf(obj[2]));   
                mapf.put("time", String.valueOf(obj[3]));   
                list.add(mapf);
            
        }
                
        int index;
        if(page!=1){
            index = page;
        }else{
            index = 1;
        }
        List<Map<String,Object>> plist = new ArrayList<>();
        int pageSize = 10;
        int total = 0;
        if(list!=null){
            total = list.size()%pageSize==0?list.size()/pageSize:list.size()/pageSize + 1;
            for(int i=(index-1)*pageSize;i<(pageSize*index<list.size()?pageSize*index:list.size());i++){
                plist.add(list.get(i));
            }
        }
        
        Map<String, Object> map = new HashMap<>();
        map.put(LIST, plist);
        map.put(TOTALPAGES, total);
        map.put(CURRENTPAGE, index);
        if(list.size()!=0){
            map.put(TOTALRECORDS, list.size());
        }else{
            map.put(TOTALRECORDS, 0);
        }
        return map;
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容