Java开发工具-lombok的介绍和使用

3 篇文章 0 订阅

Lombok 是一种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO),通过注解实现这一目的。

在一般情况下,我们通常将一个类中的各个属性设置getter和setter等函数,如下所示(getter和setter):

public class User {
    private int id;
    private String name;
    private String pwd;

    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

很明显,我们的代码量由于getter和setter方法而变得冗余,这不是我们希望看到的。那么,利用java的注解机制,就可以很完美的解决这个问题,这就是lombok工具包要实现的目的。lombok工具包的使用如下:

import lombok.Data;

@Data
public class User {
    private int id;
    private String name;
    private String pwd;
}

通过@Data注解,这个类就可以自动生成这些方法(getter、setter和constructor等等)。当然,@Data是一种粗粒度的注解,lombok也提供了很多细粒度的注解方式,如下:

  • field注解:@Getter,@Setter
  • 类注解:@ToString,@AllArgsConstructor

lombok是一个项目要依赖的jar包,我们可以通过IDEA中的pom.xml对其进行自动配置,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>SpringLearning</artifactId>
        <groupId>org.example</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>spring-mybatis</artifactId>

    <dependencies>
    	<!--添加lombok依赖包-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.10</version>
        </dependency>
    </dependencies>
</project>

lombok也是IDE的一个插件,在编译器编译时通过操作AST(抽象语法树)改变字节码的生成。lombok不像spring中的依赖注入是运行时的特性,而是编译时的特性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值