`
流浪鱼
  • 浏览: 1696476 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Lombok

    博客分类:
  • java
 
阅读更多

Lombok能以简单的注解形式来简化java代码,提高开发人员的开发效率。例如开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals等方法,而且需要维护,当属性多时会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。

Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。这样就省去了手动重建这些代码的麻烦,使代码看起来更简洁些。

Lombok的优缺点

优点:

  1. 能通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,提高了一定的开发效率
  2. 让代码变得简洁,不用过多的去关注相应的方法
  3. 属性做修改时,也简化了维护为这些属性所生成的getter/setter方法等

缺点:

  1. 不支持多种参数构造器的重载
  2. 虽然省去了手动创建getter/setter方法的麻烦,但大大降低了源代码的可读性和完整性

@Data

@Data注解在类上,会为类的所有属性自动生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。

@Getter/@Setter

如果觉得@Data太过残暴(因为@Data集合了@ToString、@EqualsAndHashCode、@Getter/@Setter、@RequiredArgsConstructor的所有特性)不够精细,可以使用@Getter/@Setter注解,此注解在属性上,可以为相应的属性自动生成Getter/Setter方法。

@NonNull

该注解用在属性或构造器上,Lombok会生成一个非空的声明,可用于校验参数,能帮助避免空指针。

@Cleanup

该注解能帮助我们自动调用close()方法,很大的简化了代码。

@EqualsAndHashCode

默认情况下,会使用所有非静态(non-static)和非瞬态(non-transient)属性来生成equals和hasCode,也能通过exclude注解来排除一些属性。

@ToString

类使用@ToString注解,Lombok会生成一个toString()方法,默认情况下,会输出类名、所有属性(会按照属性定义顺序),用逗号来分割。

通过将includeFieldNames参数设为true,就能明确的输出toString()属性。这一点是不是有点绕口,通过代码来看会更清晰些。

@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor

无参构造器、部分参数构造器、全参构造器。Lombok没法实现多种参数构造器的重载。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    lombok 1.18.24 良心价

    lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 lombok 1.18.24 ...

    lombok.jar;lombok.jar

    Lombok是一款非常实用的Java库,它通过注解的方式简化了Java代码的编写,特别是减少了getter、setter、构造函数、equals、hashCode以及toString等方法的编写。Lombok的核心理念是减少样板代码,让代码更加简洁易读。...

    lombok 最新插件版本 idea更新后 lombok报红错

    在IDEA中,Lombok插件是支持Lombok功能的关键,它使得IDE能够理解并处理Lombok的注解,如`@Data`, `@AllArgsConstructor`, `@NoArgsConstructor`等,从而在编译时自动生成对应的getter、setter、构造器等方法。...

    lombok_lombok_源码.zip

    Lombok 是一个 Java 开发工具库,它通过注解处理器自动为 Java 类生成常见的 getter、setter、构造器、equals、hashCode 和 toString 方法,极大地减少了样板代码。本压缩包"Lombok_lombok_源码.zip"包含了 Lombok ...

    lombok的eclipse安装包

    本安装包是专门为Eclipse集成开发环境提供的Lombok支持,使得开发者可以更加便捷地在Eclipse中使用Lombok的功能。 首先,我们需要了解Lombok的基本概念。Lombok通过在源码级别添加注解(如`@Data`, `@Setter`, `@...

    Lombok安装及使用

    Lombok是一款Java库,它通过注解处理器在编译时自动插入代码,简化了Java对象的创建和维护,从而减少了冗余的getter、setter、equals、hashCode和toString方法的编写。Lombok的主要目标是使Java代码更加简洁,提高...

    lombok-1.16.10-API文档-中文版.zip

    赠送jar包:lombok-1.16.10.jar; 赠送原API文档:lombok-1.16.10-javadoc.jar; 赠送源代码:lombok-1.16.10-sources.jar; 赠送Maven依赖信息文件:lombok-1.16.10.pom; 包含翻译后的API文档:lombok-1.16.10-...

    lombok-1.16.20-API文档-中文版.zip

    赠送jar包:lombok-1.16.20.jar; 赠送原API文档:lombok-1.16.20-javadoc.jar; 赠送源代码:lombok-1.16.20-sources.jar; 赠送Maven依赖信息文件:lombok-1.16.20.pom; 包含翻译后的API文档:lombok-1.16.20-...

    eclipse/myeclipse/Idea安装lombok插件

    Lombok是一款Java开发工具,可以帮助开发者简化实体类、数据访问对象(DAO)以及服务对象等类的编写。它可以自动插入那些重复的代码,比如getter、setter、equals、hashCode、toString以及构造函数等。Lombok通过...

    lombok 1.18.24

    Lombok 是一个 Java 开发工具,它通过注解处理器在编译时自动插入代码,以减少样板代码。Lombok 的最新版本是 1.18.24,这个版本修复了一些已知问题,并可能引入了新的特性或改进。在 Java 开发中,Lombok 提供的...

    lombok-jar包.zip

    Lombok是一款非常流行的Java库,它通过提供一系列的注解,极大地简化了Java代码的编写,尤其是减少了getter、setter、equals、hashCode、toString等方法的编写。这个"lombok-jar包.zip"文件包含了Lombok的jar包,是...

    lombok 插件idea 下载

    Lombok是一款非常受欢迎的Java库,它通过注解的方式,帮助开发者自动地生成类中的getter、setter、构造函数等常用代码,从而简化了Java代码,减少了冗余。在标题和描述中提到的"Lombok插件 IDEA 下载",主要是指在...

    lombok.jar(1.16.18版本)最新包

    lombok(1.16.18版本)最新包, 1、下载Lombok.jar 2、双击运行Lombok.jar 数秒后将弹出一框,以确认eclipse的安装路径 3、确认完eclipse的安装路径后,点击install/update按钮,即可安装完成 4、安装完成之后,请...

    lombok.jar及eclipse两种安装方式

    `lombok.jar`是Lombok库的可执行文件,包含了Lombok的所有功能。它通过被集成到IDE中,使得开发者可以在编写Java类时直接使用Lombok的注解,如`@Data`、`@Setter`、`@Getter`等,这些注解会自动生成相应的 getter 和...

    lombok-idea2019适配版.zip

    Lombok是一款非常受欢迎的Java库,它通过注解的方式简化了Java对象的创建,自动处理getter、setter、构造函数等繁琐的代码,极大地提高了开发效率。在IntelliJ IDEA这样的集成开发环境中,Lombok插件使得IDE能够识别...

    lombok idea插件最新版本离线安装包

    Lombok是一款非常受欢迎的Java库,它通过注解的方式简化了Java代码的编写,特别是减少了getter、setter、equals、hashCode、toString等冗余方法的编写。在开发环境中,尤其是IntelliJ IDEA这样的集成开发环境(IDE)...

    lombok-plugin-2021.3.zip

    Lombok 是一个非常受欢迎的 Java 开发工具,它通过注解的方式简化了 Java 代码,尤其是数据类的编写。在给定的压缩包文件 "lombok-plugin-2021.3.zip" 中,我们找到了适用于 IntelliJ IDEA 2021.3 版本的 Lombok ...

    lombok-1.16.20.jar

    Lombok是一款非常实用的Java开发工具,其主要目标是通过注解的方式简化JavaBean的编写工作,从而提高开发效率。Lombok的1.16.20版本是它的一个历史版本,提供了许多便利的功能,使得开发者不必手动编写大量的getter...

    lombok-pluginDK-0.29-2019.2.zip

    Lombok 是一个 Java 开发工具,它通过注解的方式简化了 Java 类的编写,免去了开发者手动编写 getter、setter、构造器、equals、hashCode 和 toString 方法等繁琐的代码。Lombok 插件则是用于集成 Lombok 功能到开发...

    lombok-plugin-0.28-2018.3.zip

    Lombok 是一个 Java 开发工具,它通过注解的方式简化了 Java 类的编写工作,减少了样板代码。Lombok 的核心思想是自动插入源码到你的类中,这使得你的类保持简洁,易于阅读,同时也降低了出错的可能性。Lombok 插件...

Global site tag (gtag.js) - Google Analytics