业务需求发出来看看,看代码推出需求太累
sql优化,看你代码查询得字段应该是一样得,只是条件不一样,可以在sql层面过滤出想要得结果。如果抛开sql优化,还可以代码层面优化一点点,把set、get取值网上找一个反射方法去取会快点,美观方面嘛可以封装下
第二张图不是用了拉姆达表达式?, lambda表达式:数据量多的时候性能更好,普通for循环:数据量少的时候性能更好
List<Equip> equips = equipService.query(specification);
List<Mileage> mileages = mileageService.queryAll();
List<Equip> equipList = new ArrayList<>();
for(Equip equip:equips){
if(mileages.stream().anyMatch(a->a.getEquipId() == equip.getId())){
equipList.add(equip);
}
}
List<YourEntity> result = list.stream().filter((YourEntity m) -> m.getName() != null
&& Constants.STRING_ZERO.equals(m.getName2())).collect(Collectors.toList());