当用@Builder注解时,类里面的初始化字段就无效,比如下面类中的totalAmt和lineNum字段就会置为null。
publicclassFileExport { privateStringcharset; privateString[] fields; privateStringamtField; privateBigDecimaltotalAmt=BigDecimal.ZERO; privateAtomicLonglineNum=newAtomicLong(); privateStringdelimiter; privatePrintWriterwriter; }
对于这种情况,可以在需要保留默认值的字段上加上@Builder.Default注解解决。
publicclassFileExport { privateStringcharset; privateString[] fields; privateStringamtField; Default .privateBigDecimaltotalAmt=BigDecimal.ZERO; Default .privateAtomicLonglineNum=newAtomicLong(); privateStringdelimiter; privatePrintWriterwriter; }
Tip:idea的lombok插件记得升级到最新的,否则不支持@Builder.Default。