MybatisPlus--Lombok的使用
文章目录
- Lombok简介
- 使用方法
- 相关注解
- @Getter and @Setter
- @ToString
- @Data
- @NoArgsConstructor
- @AllArgsConstructor
Lombok简介
Lombok 是一个用于简化 Java 开发的库,通过注解帮助开发者减少样板代码(如 getter、setter、构造方法等)的书写。它在编译时通过注解处理器自动生成所需的代码,从而使代码更加简洁和易于维护。
使用方法
1.在idea中添加Lombok
插件
2.引入jar包
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
相关注解
官方注解的介绍:https://projectlombok.org/features/all
@Getter and @Setter
你可以用@Getter / @Setter
注释任何字段(当然也可以注释到类上的),让lombok自动生成默认的getter / setter方法,生成的getter遵循布尔属性的约定。
默认生成的方法是public的,如果要修改方法修饰符可以设置AccessLevel的值,例如:@Getter(access = AccessLevel.PROTECTED)
放到字段上的注解示例:
放到类上的注解示例:
@ToString
生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。
- 可以这样设置不包含哪些字段,例如:@ToString(exclude = “id”),@ToString(exclude = {“id”,“name”})
- 如果继承的有父类的话,可以设置callSuper 让其调用父类的toString()方法,例如:@ToString(callSuper = true)
- 如果需要可以通过注释参数
includeFieldNames
来控制输出中是否包含的属性名称。,例如:@ToString(includeFieldNames= false)
上面添加的注解映射到代码中为:
@Override
public String toString() {
return "MyUser{" +
"uid=" + uid +
", name='" + name + '\'' +
", age=" + age +
", email='" + email + '\'' +
'}';
}
@Data
该注解使用在类上,该注解会提供getter、setter、equals、canEqual、hashCode、toString方法。
虽然@Data
注解非常有用,但是它没有与其他注解相同的控制粒度。@Data
提供了一个可以生成静态工厂的单一参数,将staticConstructor
参数设置为所需要的名称,Lombok自动生成的构造函数设置为私有,并提供公开的给定名称的静态工厂方法。
@NoArgsConstructor
@NoArgsConstructor
是 Lombok 提供的注解,用于为类生成一个无参构造器。
@AllArgsConstructor
@AllArgsConstructor
生成一个全参数的构造方法,默认不提供无参构造。