lombok简化消除冗余java代码

前言:lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码。特别是相对于 POJO

lombok 安装(插件)

1.通过IdeaIntellij的plugins安装,选择File->settings->Plugins->输入lombok->选择Browse repositories,安装重启ieda即可。但该方法非常慢。

2.手动在lombok官网下载与你idea匹配的zip文件,注意必须与你的iede版本匹配,否则会安装失败。

2.1首先找到插件包
插件包可以在两个地方下载,分别是IDEA的官方插件仓库和GitHub里lombok-intellij-plugin仓库中的release包。
地址分别是:http://plugins.jetbrains.com/plugin/6317-lombok-plugin
网址打开后可以看到各个版本信息:

或者:
https://github.com/mplushnikov/lombok-intellij-plugin/releases
网址打开后同样可以看到插件的版本信息:

这里的版本信息有什么用呢?肯定是对应IDEA编辑器的版本了,不同版本之间是无法安装的。
2.2.之后是确认IDEA的版本
打开IDEA的安装目录可以看到IDEA的版本信息,根据idea版本下载对应的lombok

2.3.安装
依次进入IDEA–>Settings/Preferences–>Plugins

在Plugins面板中有’install from disk’按钮,点击后选择下载的lombok-plugin-0.16-2017.3.3.zip文件即可,安装成功,过程如下:

安装完成后重启idea
使用导入依赖



   org.projectlombok
   lombok
   1.16.18
   provided

lombok 注解:
lombok 提供的注解不多,可以参考官方视频的讲解和官方文档。
Lombok 注解在线帮助文档:http://projectlombok.org/features/index.

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

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

简单示例:
不使用lombok

public class Person {
    private String id;
    private String name;
    private String identity;
    private Logger log = Logger.getLogger(Person.class);
    public Person() {       
    }    
    public Person(String id, String name, String identity) {
        this.id = id;
        this.name = name;
        this.identity  = identity;
    }   
    public String getId() {
        return id;
    }   
    public String getName() {
        return name;
    }    
    public String getIdentity() {
        return identity;
    }    
    public void setId(String id) {
        this.id = id;
    }  
    public void setName(String name) {
        this.name = name;
    }
    public void setIdentity(String identity) {
        this.identity = identity;
    }
}

使用lombok

@Data
@Log4j
@NoArgsConstructor
@AllArgsConstructor
public class Person {
    private String id;
    private String name;
    private String identity;    
}

你可能感兴趣的:(lombok简化消除冗余java代码)