前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Lombok插件的安装和使用「建议收藏」

Lombok插件的安装和使用「建议收藏」

作者头像
全栈程序员站长
发布2022-10-03 16:29:15
7950
发布2022-10-03 16:29:15
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

IDEA中安装Lombok插件

打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse repositories –> 搜索lombok –> 点击安装 –> 安装完成重启IDEA –> 安装成功

在这里插入图片描述
在这里插入图片描述

引入lombok的jar包

代码语言:javascript
复制
   <dependency>
    	<groupId>org.projectlombok</groupId>
    	<artifactId>lombok</artifactId>
    	<version>1.18.4</version>
    	<scope>provided</scope>
    </dependency>

Lombok优缺点

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

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

Lombok注解

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

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

@ToString 使用该注解Lombok会生成一个toString()方法,默认情况下,会输出类名、所有属性(会按照属性定义顺序) 通过将includeFieldNames参数设为true,就能明确的输出toString()属性。

@NoArgsConstructor 无参构造器

@RequiredArgsConstructor 部分参数构造器

@AllArgsConstructor 全参构造器

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

@Cleanup 该注释自动帮助我们调用close()方法。例如:在使用io流时加上该注解就不用在finally里关闭流了

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

例子: 实例类省略了get,set,toString方法以及无参和全参构造函数

在这里插入图片描述
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/197258.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月4日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • IDEA中安装Lombok插件
  • Lombok优缺点
  • Lombok注解
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档