List<Map<String, Object>> whereQuery = new ArrayList<>(); Map<String, Object> map = new HashMap<>(); map.put("column", "owner_code"); map.put("operator", "="); map.put("value", logisticsAccount.getExt1()); Map<String, Object> map1 = new HashMap<>(); map1.put("column", "base_code"); map1.put("operator", "="); map1.put("value", "101"); Map<String, Object> map2 = new HashMap<>(); map2.put("column", "shipment_date"); map2.put("operator", "="); map2.put("value", "20200725"); Map<String, Object> map3 = new HashMap<>(); map3.put("column", "actual_sent_flag"); map3.put("operator", "="); map3.put("value", 2); whereQuery.add(map); whereQuery.add(map1); whereQuery.add(map2); whereQuery.add(map3); request.put("where_query", whereQuery);怎么去优化
时间: 2024-04-27 15:20:58 浏览: 137
List<map>多字段组合排序
5星 · 资源好评率100%
这段代码主要是对查询条件进行封装,其中包含多个 Map 对象。优化可以从以下几个方面考虑:
1. 对于相同类型的查询条件,可以将其封装成一个对象,避免重复代码。例如,可以创建一个 QueryCondition 类,包含 column、operator、value 三个属性,并提供相应的 getter 和 setter 方法。
2. 为了提高代码的可读性和可维护性,可以将查询条件的封装操作单独提取出来,封装成一个方法,将 whereQuery 的构造过程放到该方法中。这样可以减少代码的重复性,提高代码的可复用性。
3. 如果查询条件中的值是变量,而不是固定的常量,可以将其封装成一个对象,并提供相应的 getter 和 setter 方法。这样可以方便地修改查询条件,提高代码的灵活性。
4. 如果查询条件比较复杂,可以考虑使用框架提供的查询语句构建器,例如 Hibernate Criteria API 或 MyBatis 的动态 SQL。这样可以避免手动拼接 SQL 语句,提高代码的可读性和可维护性。
阅读全文