lombok的使用

项目开发的时候,发现原本的项目代码实体类中没有属性的getter和setter
项目中的代码是这样的东东

但是在实例化该对象的时候,又发现会调用这些方法

 PartyType partyType = new PartyType();
 partyType.setId(dingDingDepartMentVO.getId());
 partyType.setName(dingDingDepartMentVO.getName());

很是不明白,然后就有前辈告诉我—–“lombok”
所以就是搜索了一些资料来看看,lombok是为了消除创建实体类时候需要很多的冗余代码所设计的,来看看具体的事例:
没有使用lombok的情况:

public class Student {
    private Integer id;

    private String studentid;

    private String studentname;

    private String password;

    private Integer grade;

    private String studentTabcol;

    private Date unusedbegintime;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getStudentid() {
        return studentid;
    }

    public void setStudentid(String studentid) {
        this.studentid = studentid == null ? null : studentid.trim();
    }

    public String getStudentname() {
        return studentname;
    }

    public void setStudentname(String studentname) {
        this.studentname = studentname == null ? null : studentname.trim();
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password == null ? null : password.trim();
    }

    public Integer getGrade() {
        return grade;
    }

    public void setGrade(Integer grade) {
        this.grade = grade;
    }

    public String getStudentTabcol() {
        return studentTabcol;
    }

    public void setStudentTabcol(String studentTabcol) {
        this.studentTabcol = studentTabcol == null ? null : studentTabcol.trim();
    }


    public Date getUnusedbegintime()
    {
        return unusedbegintime;
    }


    public void setUnusedbegintime(Date unusedbegintime)
    {
        this.unusedbegintime = unusedbegintime;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", studentid='" + studentid + '\'' +
                ", studentname='" + studentname + '\'' +
                ", password='" + password + '\'' +
                ", grade=" + grade +
                ", studentTabcol='" + studentTabcol + '\'' +
                ", unusedbegintime=" + unusedbegintime +
                '}';
    }


}

这是使用了lombok的情况:

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Student {
    private Integer id;

    private String studentid;

    private String studentname;

    private String password;

    private Integer grade;

    private String studentTabcol;

    private Date unusedbegintime;
}

相信不用多说什么,大家也能看到两种的区别。

@Data 该注解能够自动创建出来get、set、toString、eaquls、hashCode等方法 
@NoArgsConstructor 这个是无参构造器 
@AllArgsConstructor 全参构造器 
@Setter set方法 
@Getter get方法 

当然还有一些具体的用法和详细的问题可以参考官方网站,这里有一个小视频,讲的挺好的
Tip:在IJ安装lombok的插件
首先下载lombok的依赖包,官网就能直接下载
如果是maven中的话,在pom.xml中添加依赖


   org.projectlombok
   lombok
   1.14.4

然后要在IJ中装一下插件:
找到Preference
lombok的使用_第1张图片

然后选择plugins,输入lombok,没有的话选择下面中间的按钮,就会自动安装
lombok的使用_第2张图片

接下来就能够实用了,当然这种方法没有谁说一定比传统的好,希望能给想了解lombok的用户有一点点帮助

当时做记录的时候忘记记录原文链接了,作者看到之后可以私信我,我补上原文链接.

你可能感兴趣的:(lombok的使用)