专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

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中添加依赖

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

然后要在IJ中装一下插件:
找到Preference
89_1.png

然后选择plugins,输入lombok,没有的话选择下面中间的按钮,就会自动安装
89_2.png

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

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

文章永久链接:https://tech.souyunku.com/46022

未经允许不得转载:搜云库技术团队 » lombok的使用

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们