File tree Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change 2424* [ ~~ 官方ConstructorBased配置BUG临时修正插件(ConstructorBasedBugFixPlugin)~~ ] ( #16-官方constructorbased配置bug临时修正插件 )
2525* [ 乐观锁插件(OptimisticLockerPlugin)] ( #17-乐观锁插件 )
2626* [ 表重命名配置插件(TableRenameConfigurationPlugin)] ( #18-表重命名配置插件 )
27+ * [ Lombok插件(LombokPlugin)] ( #19-Lombok插件 )
2728
2829---------------------------------------
2930Maven引用:
@@ -1361,3 +1362,25 @@ public class Test {
13611362 </plugin >
13621363</xml >
13631364```
1365+ ### 19. Lombok插件
1366+ 使用Lombok的使用可以减少很多重复代码的书写,目前项目中已大量使用。
1367+ 但Lombok的@Builder 对于类的继承支持很不好,最近发现新版(>=1.18.2)已经提供了对@SuperBuilder 的支持,所以新增该插件方便简写代码。
1368+ > warning: 目前很多IDE工具对@SuperBuilder 支持不是很好,虽不影响正常使用,但是开发时很不友好,暂时可以使用ModelBuilderPlugin代替该功能。
1369+
1370+ > warning1: @Builder 注解在Lombok 版本 >= 1.18.2 的情况下才能开启,对于存在继承关系的model会自动替换成@SuperBuilder 注解。
1371+
1372+ > warning2: 配合插件IncrementsPlugin 并且 @Builder 开启的情况下,因为@SuperBuilder 的一些限制,
1373+ 插件模拟Lombok插件生成了一些附加代码可能在某些编译器上会提示错误,请忽略(Lombok = 1.18.2 已测试)。
1374+
1375+ ``` xml
1376+ <xml >
1377+ <!-- Lombok插件 -->
1378+ <plugin type =" com.itfsw.mybatis.generator.plugins.LombokPlugin" >
1379+ <!-- @Builder 必须在 Lombok 版本 >= 1.18.2 的情况下 -->
1380+ <property name =" @Builder" value =" false" />
1381+ <!-- @NoArgsConstructor 和 @AllArgsConstructor 使用规则和Lombok一致 -->
1382+ <property name =" @AllArgsConstructor" value =" false" />
1383+ <property name =" @NoArgsConstructor" value =" false" />
1384+ </plugin >
1385+ </xml >
1386+ ```
You can’t perform that action at this time.
0 commit comments