一、maven地址
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
</dependency>
二、常用注解
- @Getter 、@Setter 、@ToString 、@EqualsAndHashCode
- @Data 相当于 @ToString、@EqualsAndHashCode、@Getter、@Setter和 @RequiredArgsConstructor 四个注解
- @NoArgsConstructor、@RequiredArgsConstructor 和 @AllArgsConstructor 生成构造器
- @Builder 加在类上,用于构建对象,用法 User.builder().username(“hhh”).age(18).build();
- @Cleanup 加在变量前,用于释放资源 如 @Cleanup ByteArrayInputStream in = new ByteArrayInputStream(inStr.getBytes(“UTF-8”));
- @Log、@Log4j、@Log4j2、@Slf4 编译后会生成 log对象 private static final Logger log = LoggerFactory.getLogger(LogSlf4jExample.class);
- @Getter(lazy=true) get方法懒加载,在get方法需要耗费较多资源时使用
- @Synchronized 多线程时使用,自动加锁
- @SneakyThrows 自动抛异常
- @Value 把类声明为不可变的,声明后此类相当于final类,无法被继承,其属性也会变成final属性
- @NonNull 可以做非空判断,如果传入空值的话会直接抛出NullPointerException
- @Accessors(chain = true) 链式set。如:User user=new User().setId(1L).setUsername(“lilei”);