- Lombok想要解决了的是在我们实体Bean中大量的Getter/Setter方法,以及toString, hashCode等可能不会用到,但是某些时候仍然需要复写,以期方便使用的方法;在使用Lombok之后,将由其来自动帮你实现代码生成
- 使用Lombok首先需要导入依赖
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> |
- Lombok包含以下注解:
注解 |
说明 |
@Getter |
为实体类生成变量的get方法 |
@Setter |
为实体类生成变量的get方法 |
@lombok.@Data |
为实体类生成变量的get、set、toString、hashCode方法 |
@NoArgsConstructor @RequiredArgsConstructor @AllArgsConstructor |
为实体类构造方法 |
@ToString |
自动生成toString方法 |
@EqualsAndHashcode |
从对象的字段中生成hashCode和equals的实现 |
@NonNull |
让你不在担忧并且爱上NullPointerException |
@CleanUp |
自动资源管理:不用再在finally中添加资源的close方法 |
@Value |
用于注解final类 |
@Builder |
产生复杂的构建器api类 |
@SneakyThrows |
异常处理(谨慎使用) |
@Synchronized |
同步方法安全的转化 |
@Log |
支持各种logger对象,使用时用对应的注解,如:@Log4j |
注
在 Bean / Entity 类上建议使用 @Data 注解。
lombok 的注解不能被继承
示例
@lombok.@Data public class User { private String name; private int age; } |
示例
@Getter @Setter public class User { private String name; private int age; } |