lombok @Getter @Setter 使用注意事项

时间:2023-03-08 17:45:25

lombok是一个帮助简化代码的工具,通过注解的形式例如@Setter @Getter,可以替代代码中的getter和setter方法,虽然eclipse自带的setter、getter代码生成也不需要我们手动的去敲写,但是使用@Setter @Getter这样的注解,能够使我们的代码看上去更加的简洁、优雅。
lombok下有许多常用注解,这里不过多赘述,主要讲@Getter和@Setter的一个注意点。

package com.lemon.zuul.config;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class TestDemo {
private String userName;
private int userAge;
private boolean userSex ;
private boolean isLeader;
}

 图中布尔类型为基本数据类型

setter方法
lombok @Getter @Setter 使用注意事项

上图第一行为成员变量isLeader的setter方法,其中isLeader中的is不见了,下方第四行为成员变量userSex的setter方法,一切正常

getter方法
lombok @Getter @Setter 使用注意事项

长这样,get方法的生成规范是对于布尔基本数据类型是is+变量名,如果变量名包含了一个is那么也是只有一个is不会是isIsxxx。

eclipse自动生成规则同上

修改布尔变量为对应包装类

package com.lemon.zuul.config;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class TestDemo {
private String userName;
private int userAge;
private Boolean userSex ;
private Boolean isLeader;
}

  

setter方法
lombok @Getter @Setter 使用注意事项

符合我们想要的

getter方法
lombok @Getter @Setter 使用注意事项

总结:布尔类型为对应包装类时,setter、getter生成符合我们预期结果,而为基本数据类型时,get类的方法是以is开头。
安装lombok
在写之前,我遇到一个问题,在照着网上一些博文的做法,我直接将依赖加入pom文件,使我的@Setter、@Getter注解生效了,但是在我查看对象对应方法时我却找不到他的get、set方法,网上有说是编译的原因,要开启Porject  > Build AutoMatically 我是开启的。我很崩溃,是不是我这个人有毒才用不了,最后发现,lombok需要安装的,需要在eclipse.ini配置的,单独的引入依赖不得行啊。

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.20</version>
<scope>provided</scope>
</dependency>  

下载链接:https://www.projectlombok.org/download

将下载的lombok.jar放在与eclipse.ini同级目录下

选择编译器地址打钩,如果没有识别到电脑上的IDE可以点击下方的Specify location添加ide可执行文件路径

检查eclipse.ini文件中-javaagent:D:\xxx\lombok.jar地址是否有误(如果路径含中文会启动失败)

重启项目,就发现能够正常使用啦。

文章转载至:https://blog.****.net/kiana168/article/details/79823549