在本指南中,我们将了解什么是 Lombok 项目使用 Eclipse 或 STS 等 IDE设置Lombok ,一个简单的java Lombok maven 示例Lombok项目的主要功能。

1. 什么是Lombok项目

Project Lombok是一个成熟的 java 库,可以插入您的编辑器或 IDE,如 eclipse、STS、IntelliJ 等,也可以插入 maven、gradle、ant 等构建工具。Lombok 库帮助您的 ide 忽略为您的 pojo 生成样板代码类。这是在编译期间完成的。

Lombok项目的主要目的是减少开发人员任务列表中的样板问题。它有助于使您的代码更简洁,并加快开发时间。

2. Project Lombok 如何与 IDE 配合使用

下图说明了 java 项目 Lombok 的工作原理:

  1. 将Lombok Java 库插件到您的 IDE。
  2. 使用Lombok注释来编写您的 POJO 类。
  3. Lombok将在编译时自动生成样板代码(getter、setter、toString() 等),因此开发人员无需手动为 setter、getter 编写代码,覆盖 toString()、equals()、 hashcode(),使用参数和默认构造函数等生成。

3. 在 Eclipse 或 STS 中设置 Lombok

  1. 如果我们使用 Eclipse IDE 或 Spring tool Suite (STS),我们需要先获取 Lombok  jar。最新版本位于 Maven 中央存储库。对于我们的示例,我们使用 的是lombok-1.18.10.jar。
  2. 双击下载 的 lombok.jar 文件。
  3. 安装程序 UI 打开。
  4. 指定您的 IDE Eclipse.exe 或 STS.exe 路径的位置,单击安装/更新按钮。

如果安装成功,我们可以退出安装程序。

安装插件后,我们需要重启IDE,确保Lombok配置正确。我们可以在 eclipse 中查看这个 go to help 选项点击 About eclipse:

4. 将 Lombok 添加到 Maven

最后剩下的部分是确保Lombok二进制文件位于编译器类路径中。使用 Maven,我们可以将依赖项添加到 pom.xml中。

  <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.10</version><scope>provided</scope></dependency>

5.一个简单的Java lombok示例:

@Getter 您可以使用和/或 注释任何字段 @Setter,以让 lombok 自动生成默认的 getter 或 setter。以下示例说明了如何将@Getter和/或@SetterLombok 注释添加到类的顶部,以及它如何减少源文件中的样板。

让我们看看没有使用 Lombok 和使用 Lombok 的 POJO 的普通 Java POJO 类,在下面的示例中,从技术上讲,右手边和左手边的代码是相等的,当我们在 POJO 类开发人员中使用 Lombok 时,无需编写锅炉车牌代码。

一个没有龙目岛的java Pojo

public class User {private Long id;private String username;private String firstName;private String lastName;private String email;private LocalDate lastUpdated;private boolean active;User(){} //default constructor//All args constructorpublic User(Long id, String username) {super();this.id = id;this.username = username;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}// other setters getters/* toString(), hashCode(),...etc* 50+ more lines of code */
}

龙目岛 java Pojo

import java.time.LocalDate;import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class User {private Long id;private String username;private String firstName;private String lastName;private String email;private LocalDate lastUpdated;private boolean active;}

6. 测试 Lombok Pojo 类

import java.time.LocalDate;public class SetterGetterDemo {public static void main(String[] args) {User user = new User();user.setId(1L);user.setFirstName("Peter");user.setLastName("Milanovich");user.setActive(true);user.setUsername("peterm");user.setLastUpdated(LocalDate.now());System.out.println("Id : " + user.getId());System.out.println("Username : " + user.getUsername());System.out.println("Fisr Name : " + user.getFirstName());System.out.println("Last Name : " + user.getLastName());System.out.println("is user active? : " + user.isActive());System.out.println("last updated date : " + user.getLastUpdated());}
}

6.1。输出结果

Id : 1
Username : peterm
Fisr Name : Peter
Last Name : Milanovich
is user active? : true
last updated date : 2019-12-19

7. 结论

在本指南中,我们通过一个简单的示例介绍了如何使用 IDE 设置 Lombok 并使用 maven 配置 Lombok。

参考

  1. 龙目岛计划

Eclipse 基本 java lombok maven 示例相关推荐

  1. java搭建maven项目_Eclipse使用maven创建Java Web项目完整示例

    项目开发环境 软件 版本 mac macOS JDK 1.8 maven 3.5.0 tomcat 8.5 Eclipse已经安装插件maven 1.创建Maven web项目 1.1 新建meven ...

  2. eclipse不识别java,在Eclipse中运行的Maven项目存在问题,无法识别为Java项目

    我已经将现有的maven项目导入Eclipse.我试图为JUnit测试设置配置,但是我的项目不会成为可测试项目.当我手动输入项目名称时,收到以下消息: 指定的项目不是Java项目 我还注意到,在键入代 ...

  3. java lombok 视频_Java开发神器Lombok使用详解

    最近正在写SpringBoot系列文章和录制视频教程,每次都要重复写一些Getter/Setter.构造器方法.字符串输出的ToString方法和Equals/HashCode方法等.甚是浪费时间,也 ...

  4. Jsonschema2pojo从JSON生成Java类(Maven)

    1.说明 jsonschema2pojo工具可以从JSON Schema(或示例JSON文件)生成Java类型, 并且可以配置生成Jackson 1.x,Jackson 2.x, Moshi 1.x或 ...

  5. 搭建eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo

    前言:我这里搭建好eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo.新手快速上手直接看demo. 最后处提供完整高质量de ...

  6. java 函数式编程 示例_功能Java示例 第8部分–更多纯函数

    java 函数式编程 示例 这是第8部分,该系列的最后一部分称为"示例功能Java". 我在本系列的每个部分中开发的示例是某种"提要处理程序",用于处理文档. ...

  7. java 根据类名示例化类_如何使用示例从Java中的类路径加载资源

    java 根据类名示例化类 Java中的类路径不仅用于加载.class文件,而且还可以用于加载资源,例如属性文件,图像,图标,缩略图或任何二进制内容. Java提供了API来将这些资源读取为Input ...

  8. Java EE 6示例– Galleria第2部分

    您可能在最后一篇Java EE 6 Galleria示例帖子中关注了我. 第一个是基本介绍. 第二个是关于在最新的GlassFish上运行它. 有人提到RedHat,我们应该研究将这个示例从Glass ...

  9. Java EE 6示例– Galleria

    您是否一直想知道在哪里可以找到使用Java EE 6构建的良好端到端示例? 我有. 您在网上找到的大多数东西都是非常基础的,不能解决现实世界中的问题. Java EE 6教程就是这样. 所有其他内容, ...

最新文章

  1. 如何定义中文转语音的语气
  2. MySQL显示ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)解决方法
  3. go文件服务器mimetype,网络:什么是 MIME TYPE?
  4. 计算机语言中display翻译,display的意思在线翻译,解释display中文英文含义,短语词组,音标读音,例句,词源,同义词,反义词【澳典网ODict.Net】...
  5. 作为一枚学生党,如何提升自己华丽转身
  6. php %00,Nginx %00 null byte执行任意代码(php)漏洞
  7. sql加上唯一索引后批量插入_阿里大佬总结的52条SQL语句性能优化策略,建议收藏...
  8. 关于 C 的 arithmetic conversion (进行 算术运算 时的 强制转换规则)
  9. [置顶]       spring + jstl 实现java国际化的配置步骤
  10. java随机生成车牌_JDBC:随机生成车牌号,批量插入数据库
  11. mysql新手创建数据库_用MySQL创建数据库和数据库表(新手必看)
  12. 基于matlab的暴雨强度公式参数推求,小样本流域降雨强度公式和设计降雨分布的推求方法...
  13. VGG-16网络结构详解
  14. NC文件的查阅,读取和分析(1)
  15. c语言中怎么避免整数除法,大整数除法
  16. 阿里安全IoT安全研究团队Leader谢君:如何黑掉无人机
  17. 跟小甲鱼学Web开发笔记06(最新进展不按进度顺序)
  18. Git项目管理修改项目名称
  19. 明日之后最新服务器开服时间,明日之后什么时候开服 新服开区详解
  20. 指挥中心显示大屏类型简介

热门文章

  1. 最新golang语言面试题总结(一)
  2. 进击的巨人 《兵王》6月28日启动新服【游戏资讯】
  3. python绘制彩色六边雪花
  4. 微信小程序自动化构建(云效)
  5. 富文本带点击事件的解决方案
  6. js计算两个日期之间的时间差
  7. Apache 错误日记(Error Log)记录分析
  8. Redis - Windows下载与安装
  9. 手机红外遥控器 求源码
  10. STM32F103ZE单片机FSMC接口读取NAND Flash芯片K9F1G08U0E的数据时出现数据丢失的解决办法