注解应用
1. SpringBoot 启动调用方法注解
@PostConstruct
public void someMethod(){}
2. Lombok
@Getter / @Setter: 自动生成字段的 getter 和 setter 方法。
@ToString: 自动生成 toString 方法。默认情况下,生成包含所有字段的 toString 方法。
@EqualsAndHashcode: 自动生成 equals 和 hashCode 方法。默认情况下,生成包含所有非静态、非 transient 字段的 equals 和 hashCode 方法。
@NoArgsConstructor / @RequiredArgsConstructor / @AllArgsConstructor: 自动生成无参构造方法、必须参数构造方法、全参构造方法。
@Data: 自动生成 getter、setter、equals、hashCode、toString 方法。
@Builder: 自动生成建造者模式的代码,用于创建复杂对象。
@Log: 自动生成日志记录变量,支持不同的日志框架,例如 @Slf4j 用于集成 SLF4J。
@NoArgsConstructor(force = true) / @AllArgsConstructor(force = true): 自动生成无参构造方法、全参构造方法,并将字段设置为 final。
@Cleanup: 自动管理资源,主要用于清除需要手动释放的资源,例如 IO 流。
@SneakyThrows: 在方法体中自动捕捉并重新抛出异常,无需显式地进行异常处理。
@NonNull: 生成非空检查代码。
@Accessors: 提供链式调用风格的 setter 和 getter 方法。
@Value: 创建不可变类,字段为 final,并自动生成 getter 方法。
@Wither: 自动生成属性的不可变更新方法。
@EqualsAndHashCode(callSuper = true): 生成包含父类字段的 equals 和 hashCode 方法。