我们在日常开发中封装对象时,会对一些特殊属性字段默认值;使用new构造器初始化时默认值可以被封装,在使用Lombok的Builder初始化的对象属性失效。

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class FaceReq1 {
    @JsonProperty("trans_no")
    private String transNo;
	private String type = "image";
}

解决方法:在默认值属性上使用@Builder.Default注解

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class FaceReq1 {
    @JsonProperty("trans_no")
    private String transNo;
    @Builder.Default
    private String type = "image";
}