原文链接:https://blog.csdn.net/ly1347889755/article/details/130200882
lombook依赖:
<dependencies>
<!--Lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
<scope>provided</scope>
</dependency>
</dependencies>
Lombok 插件的主要特性在于三个方向:
帮你生成 setter、getter、toString、equals、hashCode 等代码;
帮你生成构造方法。
帮你创建日志对象。
在 Java 中,我们使用 Logger 来记录日志。Logger 是一个非常有用的工具,因为它可以帮助我们在应用程序中记录信息并跟踪错误。但是,在 Java 中使用 Logger 是三行组成的样板代码。但是有了Lombok,我们要在类中定义一个 Logger 对象,只需简单地使用 @Slf4j 注解:
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class TestLogger {
public static void main(String[] args) {
log.debug("Hello Logger"); //输出 DEBUG [main] "Hello Logger"
log.info("Hello Logger"); //输出 INFO [main] "Hello Logger"
log.warn("Hello Logger"); //输出 WARN [main] "Hello Logger"
log.error("Hello Logger"); //输出 ERROR [main] "Hello Logger"
}
}
常用注解
注解名称 | 作用 |
---|---|
@Data | 生成Getter、Setter、toString、equals和hashCode方法 |
@Getter、@Setter | 生成Getter、Setter方法 |
@ToString | 生成toString方法 |
@EqualsAndHashCode | 生成equals和hashCode方法 |
@NoArgsConstructor | 生成无参构造方法 |
@AllArgsConstructor | 生成全参构造方法 |
@RequiredArgsConstructor | 生成构造方法,只包含带有 @NonNull 注解的成员变量 |
@NonNull | 标识成员变量不允许为空 |
@Slf4j | 自动生成Slf4j的日志变量 |
@Log4j | 自动生成Log4j的日志变量 |
@Slf4j、@Log4j、@Log等 | 自动生成对应框架的日志变量 |
@Builder | 提供一种流畅的、便于阅读的构建器模式 |
@Value | 类似于@Data,但只生成Getter方法,且生成不可变类 |
@UtilityClass | 表示当前类是一个实用类,其中的静态方法都是直接调用,不需要创建实例 |