java_bean 格式化数据 在set () get()方法中处理

30 阅读1分钟

1.传参的格式化:处理逻辑方对应set get方法处理

bean中字段格式化, 一般会在业务层做处理,如果写在字段的get set方法中业务边界更明确,方法复用性更好!

例如:这里对参数conditionsMap 需要过滤掉IndicatorConditionDTO字段defaultValues(Object类型)为空的数据,对参数的格式化 放到set get方法处理

@ApiModelProperty(value = "多个查询条件")
private Map<String, List<IndicatorConditionDTO>> conditionsMap;

public Map<String, List<IndicatorConditionDTO>> getConditionsMap() {
    return ObjectUtil.clone(conditionsMap);
}

public void setConditionsMap(Map<String, List<IndicatorConditionDTO>> conditionsMap) {
    if (CollectionUtils.isNotEmpty(conditionsMap)) {
        for (Map.Entry<String, List<IndicatorConditionDTO>> item : conditionsMap.entrySet()) {
            List<IndicatorConditionDTO> list = ObjectUtil.clone(item.getValue().stream().filter(x -> CollectionUtils.isNotEmpty(x.getDefaultValues()) || ObjectUtil.isNotEmpty(x.getDefaultValue())).collect(Collectors.toList()));
            item.setValue(list);
        }
    } else {
        this.conditionsMap = new HashMap<>();
    }
}

2.常用判空方法

判空集合:org.springframework.util.CollectionUtils.isEmpty() 对象判空:cn.hutool.core.util.ObjectUtil.isEmpty(Object obj) 字符串判空:cn.hutool.core.util.ObjectUtil.isEmpty(Object obj)