feilong 3.0.10 发布了,让 Java 开发更简便的工具库

栏目: 软件资讯 · 发布时间: 4年前

内容简介:feilong 3.0.10 发布了,feilong 是一个让Java开发更简便的工具库。 让你从大量重复的底层代码中脱身,提高开发效率; 让你的代码更简炼,易写、易读、易于维护; 文档地址: http://feilong-core.mydoc.io/ 单元测试...

feilong 3.0.10 发布了,feilong 是一个让 Java 开发更简便的 工具 库。

  1. 让你从大量重复的底层代码中脱身,提高开发效率;
  2. 让你的代码更简炼易写易读易于维护;

文档地址: http://feilong-core.mydoc.io/

单元测试数 增加至 2259 个, 单元测试覆盖率 增加至 91% ,javadoc 比率 83%

本次升级共有 3 处变更, 具体参见 3.0.10 milestone

???? feilong-json

#300 ✨ OrPropertyFilter.OrPropertyFilter(PropertyFilter filter1, PropertyFilter filter2)改造成支持动态参数 [enhancement]
#299 ✨ java 转json 支持可以设置过滤某些有业务逻辑的属性 [enhancement]

比如

{
        "orderInfoList":         [
                        {
                "chargeDetials": "24121",
                "discountDetials": {"discountInfo":                 {
                    "discountAmt": "0",
                    "discountCode": "COD"
                }}
            },
                        {
                "chargeDetials": "6666",
                "discountDetials": {"discountInfo":                 {
                    "discountAmt": "8888",
                    "discountCode": "alipay"
                }}
            }
        ],
        "ssd": null
}

如果 discountDetials 里面的discountInfo 对象 discountAmt 属性是 "0" , 那么整个discountDetials 不输出

期望结果:

 {
        "orderInfoList":         [
                        {
                "chargeDetials": "24121"
            },
                        {
                "chargeDetials": "6666",
                "discountDetials": {"discountInfo":                 {
                    "discountAmt": "8888",
                    "discountCode": "alipay"
                }}
            }
        ],
        "ssd": null
    }

你可以这么做:

    @Test
    public void testNew1(){
        JavaToJsonConfig javaToJsonConfig = new JavaToJsonConfig();
        javaToJsonConfig.setPropertyFilter((source,name,value) -> {

            if ("discountDetials".equals(name)){
                DiscountDetials discountDetials = (DiscountDetials) value;

                if ("0".equals(discountDetials.getDiscountInfo().getDiscountAmt())){
                    return true;
                }
            }

            return false;
        });
        String format = JsonUtil.format(ORDER_DETAILS, javaToJsonConfig);
        LOGGER.debug(format);

        assertThat(
                        format,
                        allOf(
                                        containsString("{\"chargeDetials\": \"24121\"}"), //
                                        containsString("\"discountAmt\": \"8888\"")));

    }

 

???? feilong-net

#291 ✨ http 工具类, 支持自动去除url 空格, 提高健壮性 [enhancement feilong-net-filetransfer]


以上所述就是小编给大家介绍的《feilong 3.0.10 发布了,让 Java 开发更简便的工具库》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web Form Design

Web Form Design

Luke Wroblewski / Rosenfeld Media / 2008-5-2 / GBP 25.00

Forms make or break the most crucial online interactions: checkout, registration, and any task requiring information entry. In Web Form Design, Luke Wroblewski draws on original research, his consider......一起来看看 《Web Form Design》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具