Lombok -- 简化你的Java编码 (JDK6+)

使用Java 17中的record替代Lombok的部分功能 Lombok和record都可以帮助我们编写更加整洁的代码。前者是第三方库,可能存在一些不可预知的问题和IDE兼容问题,但功能更加全面和强大;后者属于Java原生的能力,功能虽弱一些,但用好它也能帮助我们减少很多代码的编写,且IDE兼容性更好。好了,今天的分享就到这里。如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!更多Java新特性教程可以点击直达!欢迎关注我的公众号:程序猿DD。前沿技术早知道,弯道超车有希望!积累超车资本,从关注DD开始! 阅读详情

最近同事推荐了一款非常好用的Java库,让我非常恨自己对好东西的关注不够,也感叹牛人多,Java世界的开源好东西多。这里把它推荐给大家:Lombok。

Lombok是用来简化Java代码的编写,那么就需要IDE和编译器(Maven)支持Lombok。先说说具体怎么用:


第一步 下载lombok jar文件 https://projectlombok.org/download.html


第二步,执行它,把它加到开发IDE eclipse的classpath中。




3. 启动IDE,在项目中加入lombok的依赖,然后在java文件中加入lombok的annotation,然后奇迹就出现了,自动添加了很多代码,可以帮忙简化开发,增加可读性。

<dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.10</version>
        <scope>provided</scope>
</dependency>
Note:lombok的功能是generate class file,所以scope只要provided就好。

加入Data, NoArgsConstructor, AllArgsConstructor后Eclipse中效果图:


Maven编译后的class文件


Lombok有非常多的功能,具体可以参考https://projectlombok.org/features/index.html。对我来说常用的包括:Val,@Getter / @Setter,@NoArgsConstructor,   @AllArgsConstructor,@Cleanup,@ToString,@Log4j2,@Slf4j,@NonNull


具体原理可以参考:http://hannesdorfmann.com/annotation-processing/annotationprocessing101

Lombok源代码:https://github.com/rzwitserloot/lombok/

IntelliJ IDEA中Lombok插件的实战指南 Lombok是一个Java库,它通过注解的方式在编译期为开发者自动生成样板式的代码。它旨在减少代码冗余,简化日常的Java开发任务。Lombok的主要作用包括自动生成getter和setter方法、构造函数、equals方法、hashCode方法以及toString方法等。在开发过程中,开发者通常需要编写很多样板代码,这不仅降低了开发效率,同时也使得代码维护变得繁琐。Lombok正是为解决这一问题而生。它通过在源代码中添加特定注解,自动地在编译时生成相应的代码,从而让开发者能够专注于业务逻辑的实现。 阅读详情

相关推荐

jdk64位-1.7和1.8安装包以及lombok.jar包

jdk64位-1.7和1.8安装包以及lombok.jar包下载地址,打开下载文档,永久免费下载!!!

IDE使用jdk1.7搭建springboot项目

由于springboot2.0以后不支持jdk1.7,所以只能自降springboot的版本由2.0降为1.56 当选用jdk1.7构建springboot项目时会提示,选用jdk1.8 一直next,引入的jar包也可以不必勾选,因为在之后我们会降低springboot的版本 构建项目成功之后,查看pom.xml,springboot的版本为2.2.5 复...

xiayz的博客 4497

头歌操作系统2.3系统调用命令ls执行的系统调用

设置版本0内核为分析对象。然后一直c直到虚拟机出现。然后一直c就是答案了。

m0_74128952的博客 1万+

初识lombok

在我们创建一个javapojo类或者创建javaBean类的时候,肯定会遇到需要大量的重复编写Getter/Setter/toString还有的需要equals和hashCode方法,大量的编写相同的必然会造成代码的冗余。然而java是一个面向对象的编程,虽然如IDEA等工具可以简化我们编写构造器、Getter、Setter的方法,但是这些代码还是实实在在存在于我们的java文件中。 ...

weixin_42095582的博客 771

CHNS数据库下载与使用指南:从申请到导入的全流程解析

面板数据是经济学与公共卫生实证研究的重要支撑。中国健康与营养调查(CHNS)自1989年持续追踪中国居民的家庭与个人健康、营养及经济行为,为研究者提供了跨度近三十年的纵向微观数据。理解CHNS的数据组织原理与申请机制,是高效利用该数据的前提。该数据广泛适用于健康经济学、膳食营养分析及公共政策评估等场景。围绕CHNS的下载流程,完整梳理了注册申请、数据文件解析以及Stata、R、Python三种工具的读取方法,并针对邮箱验证、文件损坏、ID匹配等常见问题提供排查建议,帮助研究者快速建立数据处理基础。

weixin_33624741的博客 283

Aveva Marine C# 二次开发入门001

1# 引用 C:\AVEVA\Marine\OH12.1.SP4\Aveva.ApplicationFramework.dll C:\AVEVA\Marine\OH12.1.SP4\Aveva.ApplicationFramework.Presentation.dll 2# 引用命名空间, using Aveva.ApplicationFramework.Presentation;usi...

weixin_30245867的博客 1911

自动生成代码插件:Lombok

** 自动生成代码插件:Lombok **一、下载和安装: 1、官网下载:https://projectlombok.org/ 2、安装:通过windows 的控制台cmd来安装(给eclipse安装,idea安装的话,直接在搜idea搜lombok插件就可以直接安装啦): 1):进入Lombok的jar包的目录 2):安装命令:java -jar lombok的jar包(带上版本),例如我下载的是 lombok-1.16.14.jar 则在cmd命令窗口,应该输入: java java -jar lomb

伟庭的博客 3878

Blender软件导出地形到Gazebo中

Blender软件导出地形到Gazebo中,并配置纹理、刚度、高度。

m0_70652514的博客 3376

JDK 1.7 新特性

&#13; 1.对Java集合(Collections)的增强支持&#13;   在JDK1.7之前的版本中,Java集合容器中存取元素的形式如下:&#13;   以List、Set、Map集合容器为例:&#13; &#13;   &#13;   在JDK1.7中,摒弃了Java集合接口的实现类,如:ArrayList、HashSet和HashMap。而是直接采用[]、{}的...

Tolvgx的专栏 410

BUCK型DC/DC变换器的建模与仿真

BUCK型DC-DC变换器的建模与仿真摘要1 文献调研1.1 研究背景1.2 Buck电路的应用场合2 原理分析2.1 模型介绍2.2 模型分析2.3 频域和时域响应2.4 参数指标要求3 参数设计3.1 校正器选择3.2 校正器参数整定3.2.1 积分器3.2.2 一阶微分环节3.2.3 超前校正器3.3 改进4 结论与展望参考文献 摘要   目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。如何对一个系统进行建模分析、补偿校正变得越来越重要。   本文选择BUCK型DC/DC变换器作为载体,

屠龙归来仍是少年 2万+

8.5/Q1,Charls最新高分文章解读!

8 257名受试者中,672人(8.14%)在9年内发生过卒中。在调整的多因素cox回归模型中,TyG和ABSI仍然是卒中的预测因素,TyG的HR为1.25(95%CI:1.06~1.47),ABSI的HR为1.33(95%CI:1.06~1.68)。TyG和ABSI联合诊断效能最高(AUC:0.579,95%CI:0.553~0.597),而TyG(AUC:0.566,95%CI:0.544~0.587)和ABSI(AUC:0.533,95%CI:0.524~0.597)的诊断效能最低。

gsky_sci的博客 1014

Lombok 使用详解,简化Java编程

前言 在 Java 应用程序中存在许多重复相似的、生成之后几乎不对其做更改的代码,但是我们还不得不花费很多精力编写它们来满足 Java 的编译需求 比如,在 Java 应用程序开发中,我们几乎要为所有 Bean 的成员变量添加 get() ,set() 等方法,这些相对固定但又不得不编写的代码浪费程序员很多精力,同时让类内容看着更杂乱,我们希望将有限的精力关注在更重要的地方。 Lombok 已经诞...

日拱一兵 7325

AI Agent在智能广告投放中的应用

随着互联网的快速发展,广告投放市场变得越来越复杂和竞争激烈。传统的广告投放方式往往难以精准地触达目标受众,导致广告资源的浪费。AI Agent作为一种智能的自动化程序,能够在复杂的环境中自主学习、决策和执行任务。本文章的目的在于深入探讨AI Agent在智能广告投放中的应用,研究如何利用AI Agent提高广告投放的精准度、效率和效果,降低成本。范围涵盖了AI Agent的基本原理、相关算法、在广告投放中的具体应用场景以及实际案例分析等方面。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 615

Java工具—Lombok

Lombok的介绍和安装 参考: https://www.cnblogs.com/ooo0/p/12448096.html https://www.cnblogs.com/pascall/p/10281169.html 官网:https://projectlombok.org/ Lombok介绍: Lombok是一个优秀的Java代码库,简化了Java的编码,为Java代码的精简提供了一种方式 每个JavaBean都会写getter、setter、equals、hashCode、toString等代

路边烧卖 1389

第95节:多模型多卡推理管理

多模型推理:在同一硬件平台上同时部署多个不同或相同的深度学习模型,满足多任务需求。多卡推理:利用多块 GPU 资源,提升推理吞吐量与并发能力。目标:合理分配 GPU 资源,实现高效、低延迟的推理服务。

yumeiguo的博客 217

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

lombok 简化代码_Lombok减少您的样板代码

lombok 简化代码 在本文中,我向您展示了本周偶然发现的产品的强大功能: Project Lombok使您可以在编译代码中修改字节码。 首先,我将详细介绍Lombok开箱即用的功能。 在本文的第二部分,我将描述如何扩展它以生成您自己的代码。 介绍 自从JEE诞生以来,就已经有人抱怨编码组件的复杂性。 我认为EJB v2是这种复杂性的一个很好的例子:对于一个简单的EJB,您必须提供...

dlz00001的博客 277

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

别让Lombok成为你代码“亚健康”状态的帮凶

如果您正在阅读此文,想必您对Project Lombok已经有了一段时间的了解。您是否正准备拥抱Lombok?还是正准备将如此酷炫的项目推荐给你的团队?如果您准备那么做,不妨听听我在使用Lombok一年后的一些感受。 我承认,Lombok是一个很不错的Java库,它可以让你在少写代码的同时耍耍酷,简单的几个注解,就可以干掉一大片模板代码。但是,所有的源代码很多时候是用来阅读的,只有很少的时间...

树下魅狐 1807

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

如果项目今后需要扩展,那么可以考虑不要使用lombok

我承认,Lombok是一个很不错的Java库,它可以让你在少写代码的同时耍耍酷,简单的几个注解,就可以干掉一大片模板代码。 但是,所有的源代码很多时候是用来阅读的,只有很少的时间是用来执行的(你可以细品这句话)。 一年以前,我和大多数人都认为Lombok的出现会让Java的编码体验会更好,并极力的在我的团队中推荐使用Lombok。 一年以后,我开始对此产生顾虑,尤其是在我准备为开源的博客系统Una-Boot升级Java版本时,我才意识到Lombok自己掉入了一个戏法陷阱。 在我进一步分析其源代码并理解相关注

qq_22343483的博客 784

为什么不推荐使用Lombok?

首先见一下什么是Lombok? 什么是Lombok? 我们来看一下Lombok的官网介绍,地址:https://projectlombok.org 我们翻译来看一下: Lombok项目是一个Java库,它会自动插入您的编辑器和构建工具中,从而使您的Java更加生动有趣。永远不用再写另一个getter或equals方法,带有一个注释的您的类有一个功能全面的生成器,自动化您的日志记录变量等等。 翻译可能不是很准确,但是简单来说,Lombok是一个可以帮助我们简化模板样式代码的Java类库,

thulium_kyg的博客 6283

为什么要放弃 Lombok ?

公众号关注“五分钟学Java”设为 “星标”,每天带你学Java!作者 :ramostear来源 :http://suo.im/5DZBh3如果您正在阅读此文,想必您对 Project...

程序员吴师兄的博客 241

Lombok是让你代码处于“亚健康”状态的真正元凶

点击上方 "程序员小乐"关注,星标或置顶一起成长每天凌晨00点00分,第一时间与你相约每日英文There are so many people out there w...

程序员小乐 469

Lombok详解

网上看到这篇文章,这里记录学习一下。 用????Lombok,让 Java 更简洁 - ENCODE the WORLD 零、 历史 一个标准的 Java bean。一个典型的 Java bean 一般具有几个属性。每个属性具有一个accessor和mutator(getter和setter)。通常还会有一个toString()方法、一个equals()方法和一个hashCode()方法。初看上去,其中可预见的冗余就已经非常多了。如果每个属性都具有一个 getter 和...

zzhongcy的专栏 1万+

Lombok教程

(一)介绍 Lombok项目是一个Java库,它会自动插入您的编辑器和构建工具中,从而为您的Java增光添彩。永远不要再编写另一个getter或equals方法,带有一个注解的类将具有功能全面的生成器,自动执行日志记录变量等等。 (二)原理 在Lombok使用的过程中,只需要添加相应的注解,无需再为此写任何代码。自动生成的代码到底是如何产生的呢? 核心之处就是对于注解的解析上。JDK5引入了注解...

发现问题,面对问题,分析问题,解决问题,总结问题 1524

lombok依赖_我承认,要放弃 Lombok了

点击蓝色“Java建设者”关注我哟加个“星标”,及时阅读最新技术文章本文来源:https://www.toutiao.com/a6820517160964588044/我承认,Lombok是一个很不错的Java库,它可以让你在少写代码的同时耍耍酷,简单的几个注解,就可以干掉一大片模板代码。但是,所有的源代码很多时候是用来阅读的,只有很少的时间是用来执行的(你可以细品这句话)。一年以前,...

weixin_39552317的博客 219

Lombok简化Java代码 - Code less do More

关于Lombok这个东西,论坛里已经有人介绍过,我也是通过别人帖子了解到这个小工具: http://www.iteye.com/topic/798305 不过作者以免写Getter/Setter为题来介绍Lombok的优势,看了后面的评论之后,觉得这个工具意义不大. 后来在博客在线看到一...

chuifuhuo6864的博客 81

关于使用Lombok的注意事项

Lombok项目是一个Java库,它会自动插入您的编辑器和构建工具中,从而为你优化Java代码。通过注解的方式代替我们手动生成gettersettertoString等方法。虽然现在的IDE可以帮我们自动生成,但是整个类显的很臃肿。尤其类的属性太多时,查看属性非常不方便。使用Lombok可以使我们的代码更加简洁,可以说是程序员的福音。官网地址:https://projectlombok.org/因为种种原因有人抵触它,有人喜欢它,这就仁者见仁智者见智了。撇开Lombok。

static_coder的博客 1785
上一篇: 项目中XA Transaction应用
下一篇: 我的常用Eclipse Coding Style设置
开心的D哥
博客等级 码龄22年 63粉丝 110原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值