Lombok

Lombok简介

Lombok,一个第三方的Java字节修改库,用来帮助你自生成一些“冗余”代码的工具

优缺点

  • 优点:省代码,省很多的代码
  • 缺点: 你的程序的源代码一般只包含.java文件,除了发布的时候,不会有人把.class文件上传到代码控制库里面。这是因为你写的是源代码,字节码只是你写的代码编译的必然结果而已。然而,使用这种第三方的工具,其实破坏了编译的过程,增加了依赖,也就是Lombok这个工具。

使用

@Data

@Data=@Getter+@Setter+@EqualsAndHashCode+@ToString+@RequiredArgsConstructor

@Value

@Value=@Getter+@EqualsAndHashCode+@ToString+@AllArgsConstructor

@Getter

给所有非静态字段添加get方法

@Setter

给所有非final静态字段添加set方法

@NonNull

  • 添加在字段上该字段生成的set方法和RequiredArgsConstructor将会添加非空判断(添加为空将会抛出空指针异常)
  • 添加在方法参数上同上

@Cleanup

将会调用局部变量的Closeabl中close方法(不过是将该变量后面都会包括性能不好)

@NoArgsConstructor, @RequiredArgsConstructor,@AllArgsConstructor

  • @NoArgsConstructor:生成一个空的构造方法
  • @RequiredArgsConstructor: 给所有final字段生成一个构造方法(static不包括)
  • @AllArgsConstructor:给所有字段生成一个构造方法(static不包括)

@Builder

在该类生成一个Builder模式

@SneakyThrows

try-catch方法上的所有Throwable异常

@Synchronized

静态方法使用对象锁(用生成全局 L O C K 私 有 不 可 变 静 态 数 组 对 象 锁 ) , 非 静 态 方 法 使 用 对 象 锁 ( 用 生 成 全 局 LOCK私有不可变静态数组对象锁),非静态方法使用对象锁(用生成全局 LOCK),使(lock私有不可变对象锁)

@ToString @ToString.Exclude @ToString.Include

生成对象toString方法,字段有@ToString.Exclude注解将不会出现在toStrign中,字段有@ToString.Include注解将会出现在toStrign中(和of一起使用),doNotUseGetters属性true将不会使用get方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值