Lombok使用

1 篇文章 0 订阅

最近认识了个好东西,对于我这种懒人来说,简直是完美,相见恨晚啊!!!

Lombok

官网:https://www.projectlombok.org

简介

Reducing Boilerplate Code with Project Lombok
Lombok降低Boilerplate代码。
这里Boilerplate是一个专业术语,用于描述在应用程序中许多重复执行的代码。所以说白了:Lombok要做的就是减少重复代码。至于减少了哪里,我们下面通过代码来看。

使用

IDEA安装Lombok插件

IntelliJ IDEA > Preferencs > Plugins > Browse Repositories
搜索lombok,点击安装。
步骤1
步骤2
我这里安装过了,所以没有安装的按键。
重启IDEA,Lombok插件就安装成功了。

导入Lombokjar包

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

编写代码

一个User实体类
不实用Lombok的话


import java.util.Date;

public class User {
    /**
     *
     */
    private Long userId;

    /**
     *
     */
    private String name;
    /**
     *
     */
    private Date createdDate;
    /**
     *
     */
    private Date modifyDate;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Date getCreatedDate() {
        return createdDate;
    }

    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }

    public Date getModifyDate() {
        return modifyDate;
    }

    public void setModifyDate(Date modifyDate) {
        this.modifyDate = modifyDate;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((name == null) ? 0 : name.hashCode());
        result = prime * result + ((userId == null) ? 0 : userId.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        User other = (User) obj;
        if (name == null) {
            if (other.name != null)
                return false;
        } else if (!name.equals(other.name))
            return false;
        if (userId == null) {
            if (other.userId != null)
                return false;
        } else if (!userId.equals(other.userId))
            return false;
        return true;
    }

    @Override
    public String toString() {
        return "User [userId=" + userId + ", name=" + name + ", createdDate=" + createdDate + ", modifyDate="
                + modifyDate + "]";
    }
}

我们不仅需要对每个字段编写get、set方法,还有类的equals、hashcode和toString方法。当字段多,或者我们需要更改字段属性的时候,还要更改以上说的方法,是不是很麻烦,很啰嗦,很没有技术含量!!!
但是我们用了Lombok一切都不一样了。我们看一下使用Lombok代码:

import lombok.*;
import java.util.Date;

@Data
@Builder
@NoArgsConstructor
@EqualsAndHashCode
@AllArgsConstructor(access = AccessLevel.PRIVATE)
public class User {
    /**
     *
     */
    private Long userId;

    /**
     *
     */
    private String name;
    /**
     *
     */
    private Date createdDate;
    /**
     *
     */
    private Date modifyDate;
}

是不是瞬间干净了。清爽了许多!
这个就是Lombok的作用:

作用

帮助开发人员消除Java的冗长代码减,而消除的地方就是我们Java对象中的get,set等方法。当一个Java bean中字段过多,我们当然可以通过快捷键来编写get,set等方法,但是毫无意义。而且当对字段进行更改的话,对应的方法都需要更改,岂不是很麻烦。当我们使用Lombok后,就可以省去这些代码,Lombok会自动帮我们在IDE中注入代码。
不仅为开发人员节省了大量时间,而且提高了代码可读性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值