使用lombok解决默认值问题

使用lombok解决默认值问题

背景

有的时候我们向客户端吐json数据的时候,可能因为使用了model结构或者包装类,如果没有值是默认返回null,而不同的客户端,比如ios可能在处理null值时报异常,所以需要后端在所有可能吐到客户端的json的model里面的属性上进行默认值赋值。

可以采用lombok解决这种问题。

POM

<dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.16.16</version>
</dependency>

测试

新建两个Model,person引用son。

son属性提供了默认值。

@Data
public class MySon {
    @Builder.Default
    private Integer id = 100;
    @Builder.Default
    private String name = "default";
}

person没有默认值。

@Data
public class MyPerson {
    private Integer id;
    private Long longId;
    private String desc;
    private MySon mySon;
}

测试:

MyPerson p = new MyPerson();
MySon s = new MySon();
p.setMySon(s);
System.out.println("p = [" + p + "]");

p = [MyPerson(id=null, longId=null, desc=null, mySon=MySon(id=100, name=default))]

可以看到son的默认值已经有了。

转载于:https://my.oschina.net/u/1000241/blog/3047881

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100936.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • javaweb项目连接MySQL数据库_php实现评论回复功能

    javaweb项目连接MySQL数据库_php实现评论回复功能Java+MySQL实现评论功能设计开发一、背景项目初始版本上线,有时间写点东西记录一下项目中的心得体会,通过这个项目学习了很多,要写下来的有很多,先从评论功能开始吧。由于项目需要增加评论功能,之前并无此方面的经验,因此项目开始的一段时间都在寻思着如何进行评论功能的设计。上网搜索一波…

    2022年10月1日
    0
  • phpstorm激活码2021。3[在线序列号]

    phpstorm激活码2021。3[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    216
  • 主板上的minipcie_移远4g模组

    主板上的minipcie_移远4g模组MiniPCIE封装4G模组价值仍在2019年,中国正式进入5G商用元年。4G网络不管是速度、还是信号上都再无优势,那么4G网络会被淘汰吗?现在物联网应用最大的承载部分是在2G/3G网络,而现在的NB-IOT网络,不适用在高速率,低延时通信场景中。以前对速率,时延有一定要求的物联网设备将会向4G的LTE网络迁移,4G网络已经足够承载相关设备。也就是说,很长一段时间内就是作为物联网的承载网络…

    2022年9月8日
    0
  • mtk驱动安装_UBOOT下U盘驱动移植

    mtk驱动安装_UBOOT下U盘驱动移植对于MTKCamera驱动移植一般分为四部分:1、硬件IO口配置;2、Camera驱动移植;3、上电时序;4、修改i2c控制器;硬件电路:1、GPIO配置打开 mediatek\dct\DrvGen.exe 选择mediatek\custom\xiaoxi\kernel\dct\dct\codegen.

    2025年7月22日
    0
  • 用通俗易懂的大白话讲解Map/Reduce原理「建议收藏」

    用通俗易懂的大白话讲解Map/Reduce原理「建议收藏」下面是我自己的微信公众号(不定期更新JAVA、大数据、个人成长等干货)1、公众号上有经典的技术电子书可以免费领2、大家有问题可以在公众号问我,只要你问了我就会回复(相互交流)也可以扫描下面二维码,加我个人微信,和我直接沟通Hadoop简介Hadoop就是一个实现了Google云计算系统的开源系统,包括并行计算模型Map/Reduce,分布式文件系统HDFS,以及……

    2022年7月26日
    1
  • scaleType详解

    scaleType详解scaleType详解

    2022年6月16日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号