非常好用的插件之IntelliJ IDEA lombok插件的安装和使用

一、lombok的介绍

     lombok是开源的代码生成库,是一款非常实用的小工具,我们在编辑实体类时可以通过lombok注解减少getter、setter等方法的编写,在更改实体类时只需要修改属性即可,减少了很多重复代码的编写工作。
     此插件需要下载、安装、配置,使用起来虽然方便但是需要记住几个常用注解,下面会介绍。

二、lombox的安装

     因为本人用的是idea,所以在此只演示在idea上面的安装。
     idea其实是自带lombox插件的,可以联网进行下载,注意网络一定要好。不然会下载失败切记
1.1 打开File–>Settings,或者使用快捷键Ctrl+Alt+S进入设置页面。左侧选择Plugins(插件),右侧点击Browse repositories…,
在这里插入图片描述
1.2 进入插件安装页面。。。。
在这里插入图片描述
1.3 此时,网络好的话可以顺利下载,不好的话,需要反复操作,或是开流量吧。。。
在这里插入图片描述
1.4 你以为到这里就完成了吗?高兴的太早了,他还有一个非常重要的步骤。就是。。。启用注释处理,这步不做的话,lombox还是不能用,你说气人不。具体为什么要这样做,我也不太记得了,如果哪位大神知道,还请留言告知。说是放开编译权限之类的。。。
在这里插入图片描述

三、lombox的依赖配置

因为我用的是gradle,所以在build.gradle文件中添加依赖。

dependencies {
    implementation('org.springframework.boot:spring-boot-starter-web')
    implementation('org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2')
    runtimeOnly('mysql:mysql-connector-java')
    testImplementation('org.springframework.boot:spring-boot-starter-test')
    //orika  依赖 
    compile('ma.glasnost.orika:orika-core:1.5.1')
    //lombox依赖
    compile('org.projectlombok:lombok:1.16.16')
}

四、lombox的使用

二话不说上代码更清晰。。。。。
用lombox之前,每次get、set方法都要很多行,虽然也有快捷键生成,但是代码看起来也不是很清爽。

public class UserA {
    private String  name;
    private int   age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
}

但是有了lombox之后。。。。。只需要一个@Data注释,就问你给力不?

@Data
public class UserA {
    private String  name;
    private int   age;
}

虽然看不到,但是lombox已经帮我们生成了。。。
在这里插入图片描述

五、lombox注释的使用(这些都是摘抄的,因为大同小异)

  • @Data:注解在类上,将类提供的所有属性都添加get、set方法,并添加、equals、canEquals、hashCode、toString方法
  • @Setter:注解在类上,为所有属性添加set方法、注解在属性上为该属性提供set方法
  • @Getter:注解在类上,为所有的属性添加get方法、注解在属性上为该属性提供get方法
  • @NotNull:在参数中使用时,如果调用时传了null值,就会抛出空指针异常
  • @Synchronized 用于方法,可以锁定指定的对象,如果不指定,则默认创建一个对象锁定
  • @Log作用于类,创建一个log属性
  • @Builder:使用builder模式创建对象
  • @NoArgsConstructor:创建一个无参构造函数
  • @AllArgsConstructor:创建一个全参构造函数
  • @ToStirng:创建一个toString方法
  • @Accessors(chain = true)使用链式设置属性,set方法返回的是this对象。
  • @RequiredArgsConstructor:创建对象
  • @UtilityClass:工具类
  • @ExtensionMethod:设置父类
  • @FieldDefaults:设置属性的使用范围,如private、public等,也可以设置属性是否被final修饰。
  • @Cleanup: 关闭流、连接点。
  • @EqualsAndHashCode:重写equals和hashcode方法。
  • @toString:创建toString方法。

猜你喜欢

转载自blog.csdn.net/dahanzhinu/article/details/83898217