java lombok 使用_Lombok使用与问题

本文介绍了Java项目中使用Lombok进行代码简化的方法,包括安装、常见注解的使用,如@Data、@Getter、@Setter等。同时指出,尽管Lombok提高了开发效率,但其在对象比较和继承场景下可能导致问题,建议在某些情况下手动编写相关方法以保持代码可读性和准确性。
摘要由CSDN通过智能技术生成

前言

想想已经工作了一年,工作中遇到的问题一直没有记录下来,以后遇到相同的问题可能还需要花费很多的时间,因此打算记录一下博客。方便以后自己的复习和问题查找

刚好最近项目引入了Lombok,刚好从现在起记录一下自己的学习与成长

一、Lombok安装

Lombok是一个开源项目,源代码托管在github上,使用的时候需要在maven中引入jar包

org.projectlombok

lombok

1.16.20

provided

并且需要在开发工具中安装插件。通过eclipse或idea的插件市场自动安装即可。

还可以通过jar包本地安装:在jar包所在目录打开windows命令行,输入

java -jar lombok-1.16.20.jar

fd3eed104f7e9e66ab3fa000b46b0f83.png

程序会自动找到eclipse或idea安装目录,点击Install/Update安装即可

二、Lombok注解使用

Lombok常用的注解有

@Getter @Setter @ToString @EqualsAndHashCode @Data @NonNull

其中前4个注解顾名思义即可知道是什么意思,在类上标注后,Lombok即可生成对应的方法

其实我们只需要@Data一个注解即可,它可以生成getter、setter、equals、canEqual、hashCode、toString方法。

8f48a956b062e1cf1a3aa2fc1af377e6.png

使用起来十分方便,也会简化了平时我们的开发

@NonNull :该注解加在属性上,使用该注解可以在对应属性的set方法中判断是否为空,若为空则会抛出空指针异常

虽然提高了编码效率,却存在一个重要的问题,如果我们的类中有继承关系并且使用到equals方法比较的话,最好不要使用Lombok,@Data和@EqualsAndHashCode两个注解所生成的方法只会比较子类的属性,对于父类的属性不会去做比较,因此可能属性并不相同的两个对象会被判断为相等

三、总结

Lombok虽然帮助我们大大简化了代码,提高了整洁度,但是却降低了可读性,也对继承的特性支持不是很好,某些情况下是可以增加我们的效率,但是建议还是自己编写,毕竟开发工具可以自动生成方法,也不会有多麻烦,并且在equals方法比较的时候也可以高度的自定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值