美文网首页Java 杂谈
Lombox使用@Tolerate实现冲突兼容

Lombox使用@Tolerate实现冲突兼容

作者: SevenLin1993 | 来源:发表于2019-05-27 23:00 被阅读0次

    Lombox使用@Tolerate实现冲突兼容

    场景

    使用Lombox能够减少程序员的重复工作提高工作效率,而Lombox的注解基本是基于标准的(如,标准的Builder模式),而实际开发的时候有时候为了实现某些能力会对标准实现做一些变形,而这个时候Lombox的标准实现就会无法满足需求。

    例如,这样一个场景:

    使用@Builder对一个DTO实现一个构造器,但是在做Json反序列化的时候发生错误,原因就是缺少无参公共的构造函数,而手动写一个无参构造函数的时候编译错误,就是和@Builder冲突,虽然标准的@Builder没法是需要私有化构造函数的,但是在某些场景下我们需要对这种标准变形,这个时候Lombox提供了@Tolerate实现对冲突的兼容。

    Sample

    @Data
    @Builder
    public class User {
    
        @Tolerate
        public User() {}
    
        private String name;
    
        private int age;
    
    }
    

    注意

    • @Tolerate这个功能还处于实验阶段(我写这篇blog的时候),使用需要注意后续版本更新的变化
    • 尽量使用标准的实现,如果没有必要可以不用这种方式

    相关文章

      网友评论

        本文标题:Lombox使用@Tolerate实现冲突兼容

        本文链接:https://www.haomeiwen.com/subject/mbkltctx.html