lombok常用注解

一、添加 maven 依赖

<dependency>
	<groupId>org.projectlombok</groupId>
	<artifactId>lombok</artifactId>
</dependency>

Lombok常用注解如下图所示:
在这里插入图片描述

二、注解

@Getter/@Setter

添加注解会自动生成 getter/setter,不需要再写getter/setter方法。
在这里插入图片描述

@ToString

自动重写 toString() 方法
在这里插入图片描述

@Data

只要加了 @Data 这个注解,等于同时加了以下注解:

@Getter
@Setter
@RequiredArgsConstructor
@ToString
@EqualsAndHashCode

@Data 是使用频率最高的 lombok 注解,通常 @Data 会加在一个值可以被更新的对象上,像是日常使用的 DTO 们、或是 JPA 里的 Entity ,就很适合加上 @Data 注解。

@Value

只要加了 @Value 这个注解,等于同时加了以下注解:

@ToString
@EqualsAndHashCode
@AllArgsConstructor
@FieldDefaults
@Getter

所有字段由private和final修饰,不会产生setter方法。类本身也是由final修饰。

@Builder

自动生成流式 set 值写法,从此之后再也不用写一堆 setter 了

iSysRoleService.deleteUserRoleInfo(SysUserRole.builder().userId(yhId).roleId(roleId).build());

注意:
由于Builder会生成一个全参构造器,导致默认的无参构造器失效,所以类采用@Builder注解后无法new出来。
解决方法:
加上@AllArgsConstructor、@NoArgsConstructor后就可以同时使用new和构造者方式实例化对象了

@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Person{}

@EqualsAndHashCode

自动生成 equals(Object other) 和 hashcode() 方法,包括所有非静态变量和非 transient 的变量;如果某些变量不想要加进判断,可以透过 exclude 排除,也可以使用 of 指定某些字段

@EqualsAndHashCode(exclude = "name")

@Slf4j

自动生成该类的 log 静态常量,要打日志就可以直接打,不用再手动 new log 静态常量了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值