J2SE-Lombok
序言
Lombok在项目源码编译阶段识别lombok注解,并生成额外的代码,即编译后的二进制文件中包含了Lombok生成的额外代码,这样程序运行时执行的二进制文件中包含了Lombok生成的代码。
Lombok在Idea中使用需要安装Lombok插件,特定的项目中需要引入Lombok依赖
Idea中安装Lombok插件后,Refactor->Delombok 可以对指定文件使用,查看Lombok注解生成的代码
Lombok常规用法请参考文档
常用注解
@Data, 等同于这五个注解生成的内容,@Getter @Setter @RequiredArgsConstructor @ToString @EqualsAndHashCode
@Setter /@Getter,为非静态属性生成get、set方法
@ToString,生成ToString方法
@EqualsAndHashCode,生成hashCode和equals方法
@RequiredArgsConstructor, 生成包含final修饰的属性、@NonNull修饰的属性的构造,因为final修改的属性必须被初始化,@NonNull修改的属性应该被初始化;@RequiredArgsConstructor(onConstructor =@_(@Autowired))用户在Controller层或者Service层注入属性
@NoArgsConstructor,生成无参构造
@AllArgsConstructor,生成全参数构造
@cleanup,关闭资源,用在局部常量前面
@SneakerThrow,偷偷处理异常,生成try-catch代码,并且抛出一个运行时异常;所以一般认定不会发生的异常可以通过此注解快速处理,例如处理不支持的字符集异常,如果确定不会发生异常,则可以使用此方式快速处理异常
@Accesors 存取器,配置get、set方法使用,例如(chain=true), 则set方法返回对象自身,Java Bean规范中set方法返回void,所以使用此注解生成的代码可能因为不符合Java Bean规范导致Java Bean的一些工具类不能使用,例如:PropertyDescriptor获取不到属性的写入方法(set方法)

浙公网安备 33010602011771号