| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 | package org.jeecg.common.base;import cn.hutool.core.util.ObjectUtil;import org.apache.commons.beanutils.ConvertUtils;import java.math.BigDecimal;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Optional;import java.util.stream.Collectors;/** * 自定义Map */public class BaseMap extends HashMap<String, Object> {    private static final long serialVersionUID = 1L;    public BaseMap() {    }    public BaseMap(Map<String, Object> map) {        this.putAll(map);    }    @Override    public BaseMap put(String key, Object value) {        super.put(key, Optional.ofNullable(value).orElse(""));        return this;    }    public BaseMap add(String key, Object value) {        super.put(key, Optional.ofNullable(value).orElse(""));        return this;    }    @SuppressWarnings("unchecked")    public <T> T get(String key) {        Object obj = super.get(key);        if (ObjectUtil.isNotEmpty(obj)) {            return (T) obj;        } else {            return null;        }    }    @SuppressWarnings("unchecked")    public Boolean getBoolean(String key) {        Object obj = super.get(key);        if (ObjectUtil.isNotEmpty(obj)) {            return Boolean.valueOf(obj.toString());        } else {            return false;        }    }    public Long getLong(String key) {        Object v = get(key);        if (ObjectUtil.isNotEmpty(v)) {            return new Long(v.toString());        }        return null;    }    public Long[] getLongs(String key) {        Object v = get(key);        if (ObjectUtil.isNotEmpty(v)) {            return (Long[]) v;        }        return null;    }    public List<Long> getListLong(String key) {        List<String> list = get(key);        if (ObjectUtil.isNotEmpty(list)) {            return list.stream().map(e -> new Long(e)).collect(Collectors.toList());        } else {            return null;        }    }    public Long[] getLongIds(String key) {        Object ids = get(key);        if (ObjectUtil.isNotEmpty(ids)) {            return (Long[]) ConvertUtils.convert(ids.toString().split(","), Long.class);        } else {            return null;        }    }    public Integer getInt(String key, Integer def) {        Object v = get(key);        if (ObjectUtil.isNotEmpty(v)) {            return Integer.parseInt(v.toString());        } else {            return def;        }    }    public Integer getInt(String key) {        Object v = get(key);        if (ObjectUtil.isNotEmpty(v)) {            return Integer.parseInt(v.toString());        } else {            return 0;        }    }    public BigDecimal getBigDecimal(String key) {        Object v = get(key);        if (ObjectUtil.isNotEmpty(v)) {            return new BigDecimal(v.toString());        }        return new BigDecimal("0");    }    @SuppressWarnings("unchecked")    public <T> T get(String key, T def) {        Object obj = super.get(key);        if (ObjectUtil.isEmpty(obj)) {            return def;        }        return (T) obj;    }    public static BaseMap toBaseMap(Map<String, Object> obj) {        BaseMap map = new BaseMap();        map.putAll(obj);        return map;    }}
 |