Android使用GsomFormatPlus+Lombok简化定义实体类

  • 关于
  • 使用GsomFormatPlus
  • 使用Lombok插件优化实体类
  • 第一步,添加build引用
  • 第二步,添加插件


关于

  因为最近在重构简易音乐项目的java版本,所以难免碰到定义许多实体类,且字段不少的情况,总不能手写吧,所以用插件生成是最简便的,但是每个字段都对应set、get方法以至于一个实体类代码行数达到了600+,如下图:

android global Android global platform_Lombok


  这肯定不行啊,于是就用到了Lombok插件,当然了也要在moudle的build里面添加引用,最后同样的实体类使用后代码行数锐减如下:

使用GsomFormatPlus

  首先我们要去Android studio的settings/plugins:

android global Android global platform_android_02


  装好之后,我们点击apply and ok,此时我们需要一个自己准备一个接口返回的json数据,然后新建一个class如下:

public class LoginEntity {
    
}

  然后在括号内右键选择Generate,然后选择我们新添加的插件,GsonFormatPlus,打开之后的界面如下:

android global Android global platform_实体类_03


  然后我们点击settings,修改一下配置:

android global Android global platform_实体类_04


  将json数据放入框内,可以选择format格式话展示:

android global Android global platform_android_05


  然后点击ok会有一个预览,我们可以检查一下预生成的实体类字段属性是否正确以及是否都生成了:

android global Android global platform_Lombok_06


  点击之后,一个实体类就生成了:

android global Android global platform_java_07


  一共614行。。。接下来我们使用lombok来优化一下实体类。

使用Lombok插件优化实体类

第一步,添加build引用

  我们打开moudle的build,然后添加引用如下:

//Lombok
    implementation 'org.projectlombok:lombok:1.18.24'
    annotationProcessor 'org.projectlombok:lombok:1.18.24'

  这里最好是引用1.18.22+的版本,因为它适配了jdk18,如果低于这个版本,在运行app的时候编译会报错崩溃

第二步,添加插件

  插件在Android studio的plugins商店里面搜不到了,我们先去下载这个插件lombok-plugin-0.34.1-2019.1然后下载之后解压:

android global Android global platform_Lombok_08


  然后把这个文件剪切到Android studio安装目录的plugins里面:

android global Android global platform_android global_09


  然后我们运行Android studio,重新为刚才的json生成实体类,修改一下GsonFormatPlus的settings:

android global Android global platform_android_10

  然后生成开始生成实体类:

android global Android global platform_Lombok_11


  最终生成了只要109行,这里的@Data注解就包含了set、get以及equals等方法。我们也可以到android studio 右边侧栏的Structure里面查看是否有对应的set、get方法,有的话就表明插件和引用都没有问题:

android global Android global platform_实体类_12


  然后我们就可以正常使用它了,本篇文章到此结束,有问题欢迎批评指正,觉得不错的也请点个赞谢谢。