eclipse lombok插件安装_如果你是Java架构师或项目经理,项目技术会允许使用Lombok吗?

Lombok

Lombok项目是一个Java库,通过注解,来消除Java类中的大量样板代码。比如常见的Getter&Setter、toString()、构造函数等等。

看个例子,以前我们构建一个java是实体类的做法,

public class Entity {private int id;    private String name;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}   }

每个实体类都有着get和set方法,可能还要加上构造方法、equals、hash等方法,这些代码就是上述所说的样板代码。那么Lombok是怎么做的呢,如下,

@Datapublic class Entity {private int id;    private String name; }

我们看下生成了什么方法,本人使用的eclipse,ctrl+o 查看就行了。

9cef3a6aab675e8a4e2a4f862a14b94e.png

是不是都有了。你可以去看下Lombok包下面,还有很多的注解使用。除了类上,再多说几个例子,感受下它的魅力。

@NonNull:可以用来避免空指针,比如构造方法的入参。

public Entity(int id,  @NonNull String name) {this.id = id;this.name = name;}  

@Cleanup:通常用于流的关闭作用,如

@Cleanup FileInputStream inStream = new FileInputStream(in);

@AllArgsConstructor:生成全参构造函数。

。。。。。。。

哇!太方便了,以后项目都用它了!

建议点

上面说了Lombok的优势,确实帮我们平常开发节省了很多代码。但是每个东西的存在必然是双面的,不存在完美的说话。

1、Lombok的使用是必须要安装插件的,如果有一个同事使用了Lombok并安装了插件,那不好意思,其他的同事你得必须要安装,要不然你拉取代码 run就报错,编译失败。

2、作为分布式项目,如果有一个项目中使用了Lombok打成jar包供其他的项目去使用,那你其他的项目也得安装Lombok插件,对项目的侵入性高。

3、Lombok给我们生成的setget等方法是在编译阶段才给生成的,在开发过程中有代码的缺失,可能查找问题不是很方便。

4、JDK的升级,如果出现的特性在Lombok中不支持,那会有影响的,所以不要使用了Lombok的不要盲目的升级 JDK。

。。。。你们还有遇到什么其他的问题吗

上面总结了Lombok的优缺点,使用上方便了,并不能说明没有问题存在。

所以在项目的开发过程中,我不是不推荐大家使用,最重要的是要去评估它带来的问题,可以的话就去用吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值