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 开发更简便的工具库》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

编译器设计

编译器设计

Keith Cooper、Linda Torczon / 郭旭 / 人民邮电出版社 / 2012-12 / 99.00元

深入剖析现代编译器运用的算法和技术 强调代码优化和代码生成 体现编译原理教学的最新理念 本书旨在介绍编译器构造法中的艺术和科学。书中深入分析现代编译器后端所用的算法和技术,重点讨论代码优化和代码生成,详细介绍了用几个编程语言编写的示例等。 Keith D. Cooper 莱斯大学计算机科学系计算工程专业Doerr特聘教授,曾任该系系主任。Cooper博士的研究课题涵盖过程间......一起来看看 《编译器设计》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具