标题所指问题也可能是 @Builder @NoArgsConstructor 冲突
以上问题出现的原因是
Entity上加上 @Builder ,会默认为类加上全参构造函数,且提供以建造器模式构造对象的方法。而 @NoArgsConstructor 注解生成无参构造函数以便使用new Obj()方式创建对象,很多框架中都需要反射调用无参构造函数。但是如果显式声明了 @NoArgsConstructor ,lombok就不会生成全参构造函数,而@Builder中会用到全参构造函数,所以冲突。
以上问题的解决方式是
也即再加上@AllArgsConstructor,就是以下三种注解都加上
@Builder
@NoArgsConstructor
@AllArgsConstructor
本文探讨了在Java实体类中同时使用Lombok的@Builder和@NoArgsConstructor注解时可能出现的冲突问题。当两个注解同时存在,会导致全参数构造函数生成冲突。解决方法是添加@AllArgsConstructor注解,确保类同时拥有无参和全参构造函数。通过这种方式,既能支持建造者模式构造对象,又能满足框架对无参构造函数的需求。

3万+

被折叠的 条评论
为什么被折叠?



