java开发利器之Lombok

Lombok简介

我们在日常开发中需要定义大量的javabean,产生了大量的getter和setter的代码,显得代码非常的不优雅。那有没有什么方法可以帮我们省略掉这部分毫无技术含量的代码。答案当然是有的———Lombok。在项目中使用Lombok的好处包括:代码显得更加的优雅同时我们在修改javabean的同时无需手动去修改getter,setter等函数,提高了我们的开发效率。

Lombok官方地址
Lombok github地址

在idea中使用Lombok

Lombok插件安装

在file->settings->plugins中搜索lombok,然后安装重启idea即可
lombok安装成功截图

pom.xml中引入依赖

1
2
3
4
5
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
</dependency>

常用注解介绍

@NonNull:作用在类的属性上,用于属性的非空校验
@Cleanup:作用在方法的变量上,不用在finally块里显示调用close()提高代码的简洁性
@Data:作用在类上,提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Getter/@Setter:作用在属性上,为属性添加get与set方法
@NoArgsConstructor:作用在类上,为类提供一个无参的构造方法
@AllArgsConstructor:作用在类上,为类提供一个全参的构造方法
@EqualsAndHashCode:作用在类上,默认会会使用所有非瞬态和非静态字段来生成equals和hascode方法
@Log4j:作用在类上;为类提供一个名为log的log4j日志对象

简单的使用例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.sql.Timestamp;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Comment {
private Long id;
private Long blogId;//评论的博客的id
private Timestamp createTime;//评论创建时间
private User user;//评论作者
private String commentContent;
}
-------------本文结束您的阅读与肯定是我持续装*的最大动力-------------