一款提高Java开发效率的工具

createh53周前 (03-25)技术教程2

今天来介绍一款Java常用插件:Lombok

https://projectlombok.org/

通常在用Java代码开发项目过程中,都会建立各种各种的Bean类,如下:

public class SearchReq {
    private String searchParam;
    private int number;
    private boolean valid;
    public String getSearchParam() {
        return searchParam;
    }
    public void setSearchParam(String searchParam) {
        this.searchParam = searchParam;
    }
    public int getNumber() {
        return number;
    }
    public void setNumber(int number) {
        this.number = number;
    }
    public boolean isValid() {
        return valid;
    }
    public void setValid(boolean valid) {
        this.valid = valid;
    }
}

我们新建一个Bean后,通常都会给这个增加各种各样的setter和getter方法;
Lombok这款插件可以让我们的代码变得简洁清爽,而且功能也能满足需求,如下所示:

import lombok.Data;

@Data
public class SearchReq {
    private String searchParam;
    private int number;
    private boolean valid;
}

我们引入lombok插件后,对Bean类增加了@Data注释,这就相当于给类默认增加了setter和getter方法,但是代码直接从20多行缩到了10行以内,类的成员变量越多,感受会越明显。

另外还有一个好处,就是不用再头疼单元测试的覆盖率了,在开发的过程中,我们会同步去写很多单元测试来保证程序功能的正确性,但是像setter和getter这种方法通常会因为没有被调用到而导致覆盖率会偏低。

假设我们有下面一段测试用例:

import org.junit.jupiter.api.Test;
public class SearchReqTest {
    @Test
    public void testBean(){
        SearchReq searchReq = new SearchReq();
        System.out.println(searchReq.getSearchParam());
        System.out.println(searchReq.getNumber());
        System.out.println(searchReq.isValid());
    }
}

在没有用lombok插件的情况下:

我们通过图片的右侧发现覆盖率在50%左右,图片的左侧可以看到setter方法并没有覆盖到,因此覆盖率受影响了,而实际情况是setter方法可能是不需要去覆盖单元测试的,因为代码逻辑中并没有用到。

这时候我们再来看下使用lombok插件的情况:

可以看到代码覆盖成100%了,尽管setter方法也没有覆盖到,依旧不影响代码覆盖率,所以lombok不仅可以使代码变得简洁,提高开发效率,也很好地避免了代码覆盖率误报的问题。


Lombok的使用方式:
第1步:pom.xml中引入lombok插件


      org.projectlombok
      lombok
      1.18.22
      compile

第2步:在Idea中安全lombok插件

相关文章

Java 开发工具合集:从入门到高手必备

在 Java 开发的广袤领域中,选择合适的开发工具如同为工匠挑选趁手的兵器,不仅能大幅提升开发效率,更能助力开发者从初出茅庐的新手逐步成长为技术精湛的高手。接下来,让我们一同深入了解几款在 Java...

Java 开发者必备工具清单:提升效率的 10 款神器

在 Java 开发的广袤领域中,工欲善其事,必先利其器。合适的开发工具能够显著提升开发效率,优化代码质量,让开发过程更加顺畅和高效。以下为大家精心整理了 10 款 Java 开发者必备的工具,助您在开...

常用 Java 开发工具

入门学习时,进行简单的 Java 程序编写,我们可以使用文本编辑器,比如:记事本。但是,记事本功能不够强大,我们可以考虑使用“更加强大的记事本”,常见的有如下三种软件: Notepad++ Ultra...

2025 年,Java 开发领域这 12 大工具将继续领先!

Java作为全球最主流的编程语言之一,凭借其强大的稳定性、可扩展性和多功能性,在各行各业中占据着主导地位。展望2025年,这些工具将简化开发流程,提升生产力,并为开发者提供更多灵活性,尤其是在处理复杂...

一篇文章带你更好了解热门Java开发工具IDEA!

IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、sv...

【JAVA日常开发】03-9个工具类让你的开发效率提升80% #程序代码

9个工具库让你的Java开发效率提升80%。9个工具库让你的JAVA开发效率提升80%。话不多说,点关注开始。今天介绍前三个,直接看demo。·第一个是collections,这个是javautil下...