简介
Lombok 是一个 Java 类库,提供了一组注解,用于简化 POJO 实体类开发
使用
导入坐标
1 2 3 4 5 6
| <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> <scope>provided</scope> </dependency>
|
创建实体类
1 2 3 4 5 6 7
| public class User { private Long id; private String name; private String password; private Integer age; private String tel; }
|
使用 lombok 注解
1 2 3 4 5 6 7 8 9 10 11 12 13
| @Setter @Getter @ToString @NoArgsConstructor @AllArgsConstructor @EqualsAndHashCode public class User { private Long id; private String name; private String password; private Integer age; private String tel; }
|
- @Setter:为模型类的属性提供 setter 方法
- @Getter:为模型类的属性提供 getter 方法
- @ToString:为模型类的属性提供 toString 方法
- @NoArgsConstructor:提供一个无参构造方法
- @AllArgsConstructor:提供全参构造方法
- @EqualsAndHashCode:为模型类的属性提供 equals 和 hashcode 方法
进一步简化
@Data
注解除了不包含步骤 3 中的 @NoArgsConstructor
及 @AllArgsConstructor
这两个注解之外,包含其余所有注解。因此,以下代码段与步骤 3 下的代码段等效
1 2 3 4 5 6 7 8 9 10
| @Data @AllArgsConstructor @NoArgsConstructor public class User { private Long id; private String name; private String password; private Integer age; private String tel; }
|