本文共 2378 字,大约阅读时间需要 7 分钟。
Lombok 是一个极大提升 Java 开发效率的库,通过代码增强功能可以帮助开发者减少重复性代码,从而专注于业务逻辑的实现。以下是 Lombok 的几个常用注解的详细介绍:
作用:自动生成 getter 和 setter 方法
特点:private String name; @Getter @Setter public String getName() { return name; }
编译后会自动生成:
public String getName() { return this.name; } public void setName(String name) { this.name = name; }
作用:自动生成对象的 toString 方法
特点:@ToString class User { private String name; private Integer age; }
编译后 toString 方法会输出:
User@User(name=张三, age=30)
作用:自动生成 equals 和 hashCode 方法
特点:@EqualsAndHashCode(exclude = {"name"}) class User { private String email; private Integer id; }
编译后 equals 方法会忽略 name 字段。
作用:自动生成构造器
注意事项:
作用:整合多个注解,适用于可变的类
特点:@Data class User { private String name; private Integer age; }
编译后会自动生成以上所有方法和逻辑。
作用:类似 @Data,但字段为 final 或不变
特点:@Value class Constants { public static final String LOG_PATH = "/log/path"; }
作用:自动生成流式赋值方法
特点:@Builder class User { private String name; private Integer age; }
编译后 Builder 类会提供如下方法:
User.builder() .withName("张三") .withAge(30) .build();
作用:自动生成日志常量
特点:@Slf4j class LogUtil { @Slf4j public static void info(String message) { log.info(message); } }
通过合理使用 Lombok 的注解,可以显著减少重复代码,提高开发效率。每个注解都有特定的用途,建议根据项目需求选择最适合的注解组合。
转载地址:http://rjufk.baihongyu.com/