Lombok

前言

  • 开发项目过程中,会有很多的 pojo。pojo 又叫做 javabean, bean, entity 等等,都是他。

  • pojo 会有很多的 setter 和 getter, toString, hashcode, equals 等等,每个 pojo 都要写,增加了属性要写,减少了属性要写,还是很麻烦的。

  • Lombok 快速入门

1、Lombok

  • 使用 Lombok 不用再手动写 setter, getter, toString, hashCode, 构造方法了。

  • 没有写 setter, getter 等等也能访问。

  • 示例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.EqualsAndHashCode;
    import lombok.NoArgsConstructor;
    import lombok.ToString;

    @Data
    public class Hero {
    private int id;
    private String name;
    }
  • 注解

关键字 介绍
@Data 为类的所有属性自动生成 setter/getter、equals、canEqual、hashCode、toString 方法,
如为 final 属性,则不会为该属性生成 setter 方法

2、安装

  • Eclipse

    • 默认情况下 Eclipse 是不支持 lombok 的,所以需要安装 lombok 插件。

    • 到 jar 所在目录运行 lombok.jar

      1
      java -jar lombok.jar
  • Idea

    • 和 Eclipse 一样,刚开始不能用,Idea 也要安装之后才能使用。

    • 依次点击 Plugins -> Browse repositories -> Lombok -> Install 安装。

  • Maven 下配置

    1
    2
    3
    4
    5
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>compile</scope>
    </dependency>

3、用法

  • 使用 lombok 的功能。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import lombok.AllArgsConstructor;
    import lombok.Builder;
    import lombok.Data;
    import lombok.NoArgsConstructor;

    @Data
    @AllArgsConstructor
    @NoArgsConstructor

    @Builder
    public class Hero {
    private int id;
    private String name;
    }
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public static void main(String[] args) {

    // 传统方式
    Hero h1 = new Hero();
    h1.setId(1);
    h1.setName("garren");

    // builder 方式
    Hero h2 = Hero.builder().id(1).name("gareen").build();
    }
  • 注解

关键字 介绍
@Data 为类的所有属性自动生成 setter/getter、equals、canEqual、hashCode、toString 方法,
如为 final 属性,则不会为该属性生成 setter 方法。
@AllArgsConstructor
@NoArgsConstructor
分别提供全参构造方法和无参构造方法
@Builder 实例化和设置属性值的风格
文章目录
  1. 1. 前言
  2. 2. 1、Lombok
  3. 3. 2、安装
  4. 4. 3、用法
隐藏目录