feilong-core 2.0.1,让 Java 开发更简便的工具包
feilong-core 2.0.1,让 Java 开发更简便的工具包。本次升级共有 1 处变更, 具体参见 2.0.1 文档地址。
单元测试数 增加至 2197 个, 单元测试覆盖率 增加至 91% ,javadoc 比率 83%
[Feature] 🆕
- #804 新建
ParamUtil.toNaturalOrderingJoinValue(Map<String, String>)
将 singleValueMap 转成自然排序, 然后仅将value直接拼接成字符串(不使用 = 和& 分隔).
示例:
Map<String, String> map = newHashMap();
map.put("service", "create_salesorder");
map.put("_input_charset", "gbk");
map.put("totalActual", "210.00");
map.put("address", "江苏南通市通州区888组888号");
LOGGER.debug(ParamUtil.toNaturalOrderingJoinValue(map));
返回:
gbk江苏南通市通州区888组888号create_salesorder210.00
规则:
首先将 singleValueMap 使用 SortUtil.sortMapByKeyAsc(Map) 进行排序, 然后将 map 的 value 直接连接
说明:
常用于和第三方对接数据(比如银联大华捷通,生成 待签名的字符串)
- 该方法不会执行 encode 操作,使用原生值进行拼接
- 对于
null key或者null value的处理: - 如果
singleValueMap中,如果有 value 是 null,那么会使用StringUtils.EMPTY进行拼接
示例:
Map<String, String> map = newHashMap();
map.put("totalActual", null);
map.put("province", "江苏省");
LOGGER.debug(ParamUtil.toNaturalOrderingKeyJoinValue(map));
返回:
江苏省