前言

Lombok是一个开源项目,其使用简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码,特别是对于POJO。

Lombok的官网:https://projectlombok.org/

在官网上还有一个简短的视频讲解,介绍了Lombok的功能及使用方法。

Lombok安装

使用 Lombok 是需要安装的,如果不安装,IDE 则无法解析 Lombok 注解。先在官网下载最新版本的 JAR 包,现在是 1.16.16版本。

安装方式有两种:自动安装和手动安装,推荐自动安装。

1. 双击下载下来的JAR包安装Lombok(推荐)

双击后,Lombok会发现已安装好的IDE,然后按照Lombok的指示进行安装。如果Lombok无法发现IDE,则可以使用第二种方法进行安装。

2. IDE手动安装Lombok

将 lombok.jar 复制到eclipse.ini 所在的文件夹目录下,然后编辑eclipse.ini,在最后面插入两行:

 -Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar

然后重启eclipse。

Lombok使用

Lombok 提供的注解不多,可以参考官方视频的讲解和官方文档:https://projectlombok.org/features/index.html

下面介绍几个我常用的 Lombok 注解:

@Data       // 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter // 注解在属性上;为属性提供 setting 方法
@Getter // 注解在属性上;为属性提供 getting 方法
@Log4j // 注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor // 注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor // 注解在类上;为类提供一个全参的构造方法

下面是简单示例:

不使用Lombok

 public class User implements Serializable {
/**
*
*/
private static final long serialVersionUID = -1332337734725440336L; private Long id; private String username; private String password; private Date timestamp; private String remark; public User() {
super();
} public User(Long id, String username, String password, Date timestamp, String remark) {
super();
this.id = id;
this.username = username;
this.password = password;
this.timestamp = timestamp;
this.remark = remark;
} public Long getId() {
return id;
} public void setId(Long id) {
this.id = id;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public Date getTimestamp() {
return timestamp;
} public void setTimestamp(Date timestamp) {
this.timestamp = timestamp;
} public String getRemark() {
return remark;
} public void setRemark(String remark) {
this.remark = remark;
}
}

使用Lombok

 @Data
@NoArgsConstructor
@AllArgsConstructor
public class User implements Serializable {
/**
*
*/
private static final long serialVersionUID = -1332337734725440336L; private Long id; private String username; private String password; private Date timestamp; private String remark;
}

上面的两个 Java 类,从作用上来看,它们的效果是一样的,相比较之下,很明显,使用 Lombok 要简洁许多,特别是在类的属性较多的情况下,同时也避免了修改字段名字时候忘记修改方法名所犯的低级错误。最后需要注意的是,在使用 Lombok 注解的时候记得要导入 lombok.jar 包到工程。

Lombok安装和使用的更多相关文章

  1. Lombok 安装、入门 - 消除冗长的 java 代码

    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码. lombok 的官方网址:http://projectlombok.org/  lombok 安装1. ...

  2. Lombok 安装、入门 - 消除冗长的 java 代码(转)

    前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 ...

  3. 八:Lombok 安装、入门 - 消除冗长的 java 代码

    Lombok 安装.入门 - 消除冗长的 java 代码 前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消 ...

  4. 【转】Lombok 安装、入门 - 消除冗长的 java 代码

    前言:    逛开源社区的时候无意发现的,用了一段时间,觉得还可以,特此推荐一下.    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码.特别是相对于 ...

  5. Lombok 安装、入门以及使用

    lombok 的官方网址:http://projectlombok.org/ lombok 安装    使用 lombok 是需要安装的,如果不安装,IDE 则无法解析 lombok 注解.先在官网下 ...

  6. lombok安装、配置、使用

    eclipse安装Lombok 运行安装: java -jar ${path}\lombok.jar 选择IDE所在路径点击Install/Update即可使用. 手动安装1. 将lombok.jar ...

  7. (4)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Cloud开发环境的准备和Lombok安装步骤

    ​ 开发环境的准备主要涉及三个方面:JDK.Maven.Spring Tools 4 for Eclipse. 1.JDK JDK 的版本用 1.8 即可,环境变量大家自行去配置.配置好环境变量,在命 ...

  8. Lombok安装及Spring Boot集成Lombok

    文章目录 Lombok有什么用 使用Lombok时需要注意的点 Lombok的安装 spring boot集成Lombok Lombok常用注解 @NonNull @Cleanup @Getter/@ ...

  9. Lombok 安装

    Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO).它通过注释实现这一目的.通过在开发环境中实现 Lombok ,开发人 ...

随机推荐

  1. vi 编辑器使用中常见的命令

    原创作品,转载请在文章头部(显眼位置)注明出处:https://www.cnblogs.com/sunshine5683/p/10014724.html 要在linux学习的路上越走越远,总结是必不可 ...

  2. Spring_Spring与DAO_Spring的事务管理

    一.Spring的事务管理 在Spring中通常可以通过以下三种方式来实现对事务的管理: 使用Spring的事务代理工厂管理事务 使用Spring的事务注解管理事务 使用AspectJ的AOP配置管理 ...

  3. IniHelper——INI操作辅助类

    使用INI配置文件,简单便捷. 该辅助工具类为C#操作INI文件的辅助类,源码在某位师傅的基础上完善的来,因为忘记最初的来源了,因此不能提及引用,在此深感遗憾,并对贡献者表示感谢. using Sys ...

  4. RFC1939 POP3协议 中文版 (转载)

      1.简介 对于在网络上的比较小的结点,支持消息传输系统(MTS)是不实际的.例如,一台工作站可能不具有充足的资源允许SMTP服务器和相当的本地邮件传送系统保持序驻留,并持续运行.同样的,将一台个人 ...

  5. Windows命令行方式执行OracleSQL脚本

    调用格式 sqlplus user/pwd@orcl @F:\DB_BAKFile\createpro.sql>>F:\DB_BAKFile\log\createpro.log SQL脚本 ...

  6. vuex入门教程和思考 [转] 里面有几个实例

    Vuex基础概念 vuex中涉及的概念主要有下面几点,下面做个简单的介绍和理解. Vuex 官方文档:https://vuex.vuejs.org/zh-cn/ 官网有介绍,也有个demo shopp ...

  7. 02_Netty实现的Echo服务器和客户端

    [Echo服务端] [EchoServer] public class EchoServer { private final int port; public EchoServer(int port) ...

  8. SSM 框架-02-MyEclipse 2017 安装与破解

    SSM 框架-02-MyEclipse 2017 安装与破解 现在在学J2EE,然后使用的工具就是 MyEclipse,现在就抛弃 Eclipse 了,我就不多说它俩的区别了,但是 MyEclipse ...

  9. 线性表的Java实现--链式存储(单向链表)

    单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始. 链式存储结构的线性表将采用一组任意的存储单元存放线性表中的数据元素.由于不需要按顺序存储,链表在 ...

  10. 【眼见为实】自己动手实践理解数据库READ COMMITTED && MVCC

    [READ COMMITTED] 首先设置数据库隔离级别为读已提交(READ COMMITTED): set global transaction isolation level READ COMMI ...