List<Map<String,Object>>按某个字段排序
来源:互联网 发布:苏联海军 知乎 编辑:程序博客网 时间:2024/06/06 02:11
对service层返回的数据进行排序
1、controller
@GetMapping(value = "/per/{perId}", produces = {"application/json;charset=UTF-8"})@ResponseBodypublic String getInfo(@PathVariable String perId) throws ControllerException { try { return JsonUtilsHelper.objectToJsonString(perService.getInfoMaps(perId)); } catch (JsonProcessingException e) { throw new ControllerException(e.getMessage()); }}
2、service
按id升序
public List<Map<String, Object>> getInfoMaps(String perId) { List<Map<String, Object>> list = new ArrayList<>(); List<PerEntity> perEntityList =perRepository.findByPerId(perId); if (!CollectionUtils.isEmpty(perEntityList)) { perEntityList.forEach(perEntity -> { Map<String, Object> map = new HashMap<>(); map.put("id", perEntity.getId()); map.put("name", perEntity.getName()); map.put("updatedTime", perEntity.getUpdatedTime()); list.add(map); }); } Collections.sort(list, new MapComparatorAsc()); return list;}class MapComparatorAsc implements Comparator<Map<String, Object>> { @Override public int compare(Map<String, Object> o1,Map<String, Object> o2) { String s1 = (String) o1.get("id"); String s2 = (String) o2.get("id"); if (s1 != null) { return id1.compareTo(s2); } return 0; }}3、按更新时间降序public List<Map<String, Object>> getInfoMaps(String perId) { List<Map<String, Object>> list = new ArrayList<>(); List<PerEntity> perEntityList =perRepository.findByPerId(perId); if (!CollectionUtils.isEmpty(perEntityList)) { perEntityList.forEach(perEntity -> { Map<String, Object> map = new HashMap<>(); map.put("id", perEntity.getId()); map.put("name", perEntity.getName()); map.put("updatedTime", perEntity.getUpdatedTime()); list.add(map); }); } Collections.sort(list, new MapComparatorDesc()); return list;}class MapComparatorDesc implements Comparator<Map<String, Object>> { @Override public int compare(Map<String, Object> o1,Map<String, Object> o2) { Timestamp t1 = (Timestamp)o1.get("updatedTime"); Timestamp t2 = (Timestamp)o2.get("updatedTime"); if (t2 != null) { return t2.compareTo(t1); } return 0; }}
阅读全文
0 0
- List<Map<String,Object>>按某个字段排序
- List<Map<String, Object>> 中文字段排序
- List<Map<String, Object>> resultList按某些字段排序
- list中根据map<String,Object>的某个值排序
- List<Map<String,Object>>排序
- List<Map<String, Object>>排序
- List<Map<String,Object>>集合根据map里面的一个字段排序
- List<Map<String,Object>>集合根据map里面的一个字段排序
- List<Map<String,Object>>去重,排序
- java list<Map<String,Object>>排序
- List<Map<String,Object>>去重,排序
- List<Map<String,Object>> 的快速排序
- java list<Map<String,Object>>排序
- 对List<Map<String,Object>>进行排序
- List<Map<String,Object>> 的快速排序
- 根据对象的某个字段对List<Object>排序
- List<Map<String, Object>>
- List<Map<String, Object>>
- 17.7.14B组总结
- 如何在Linux 4.12内核添加系统调用
- java Web Lesson 1-4(笔记)
- 杀时间的人最终都被时间杀掉了
- 暑期项目开发实训 Day18
- List<Map<String,Object>>按某个字段排序
- unused block corruption 处理一例
- MSSQL联表查询优化
- 为什么df和lsblk显示的内存不一样大
- socket与http的区别
- FFMPEG(二)关键数据结构
- 关于在页面哪部分引入JS的讨论
- ORA-00257:程序归档错误,在释放之前仅限于内部连接
- 香港服务器的核心特点是什么