Lombok快速上手(安装、使用与注解参数)
发布日期:2021-05-15 09:13:45 浏览次数:15 分类:精选文章

本文共 2840 字,大约阅读时间需要 9 分钟。

Lombok注解实用指南

Lombok注解是一种简化Java代码编写的工具,它通过生成标准的getter、setter方法和其他常用方法,帮助开发者减少冗余代码。这里将详细介绍Lombok的常用注解、安装方法以及实际应用示例。

常见参数

1. @Setter

  • 注解在类或字段:为所有字段生成setter方法。
  • 注解在字段:仅为该字段生成setter方法。

2. @Getter

  • 使用方法与@Setter类似,生成getter方法。

3. @ToString

  • 注解在类:生成toString方法,按字段顺序输出类名和字段值。
  • 参数配置:
    • includeFieldNames=true:输出更详细信息。
    • exclude:忽略特定字段。
    • callSuper:包含超类toString输出。
    • Include:添加方法调用输出。

4. @EqualsAndHashCode

  • 注解在类:生成hashCode和equals方法。

5. @NoArgsConstructor

  • 生成无参构造方法,适合需要静态工厂方法的场景。

6. @RequiredArgsConstructor

  • 为需要特殊处理的字段生成一参数构造方法,支持@NonNull标记和final字段初始化。

7. @AllArgsConstructor

  • 生成包含所有字段的构造方法,处理@NonNull字段空检查。

8. @Data

  • 综合使用@ToString、@EqualsAndHashCode、@Getter,并为非final字段自动添加@Setter注解。

依赖安装

通过 Maven 或Gradle 安装Lombok依赖:

org.projectlombok
lombok
1.16.20

IDE安装

在IntelliJ IDEA中安装

  • 直接搜索并安装Lombok插件。
  • 在官网下载并安装(链接:https://plugins.jetbrains.com/plugin/6317-lombok)。
  • 设置中启用annotation processors。
  • 使用实例

    @Data(staticConstructor = "of")
    public class DataExample {
    private final String name;
    @Setter(AccessLevel.PACKAGE) private int age;
    private double score;
    private String[] tags;
    @Override
    public static class Exercise
    {
    private final String name;
    private final T value;
    }
    }

    不使用Lombok生成的POJO示例:

    public class DataExample {
    private final String name;
    @Setter(AccessLevel.PACKAGE) private int age;
    private double score;
    private String[] tags;
    @Override
    public static class Exercise
    {
    private final String name;
    private final T value;
    }
    }

    实例扩展:@ToString的应用

    @Data
    public class ToStringExample {
    private static final int STATIC_VAR = 10;
    private String name;
    private Shape shape = new Square(5, 10);
    private String[] tags;
    private int id;
    @Override
    public String toString() {
    return "ToStringExample(" + this.getName() + ", " + this.shape + ", " + Arrays.deepToString(this.tags) + ")";
    }
    }
    public static class Square extends Shape {
    private final int width, height;
    public Square(int width, int height) {
    this.width = width;
    this.height = height;
    }
    }

    构造器注解应用

    @Data(staticConstructor = "of")
    public class Foo
    {
    private T value;
    }
    public class Main {
    public static void main(String[] args) {
    Foo
    foo = Foo.of(5);
    }
    }

    日志注解示例

    @Slf4j
    public class LogExample {
    public static void main(String... args) {
    log.error("程序运行错误");
    }
    }
    @Slf4j
    public class LogExampleOther {
    public static void main(String... args) {
    log.error("错误日志处理");
    }
    }
    @Slf4j
    public class LogExampleCategory implements Category {
    public static void main(String... args) {
    log.error("日志记录");
    }
    }

    Eclipse安装Lombok插件方法

  • 进入Eclipse的插件更新站点。
  • 搜索Lombok插件,进行安装并重启Eclipse。
  • 通过以上方法,可以充分利用Lombok注解简化日常开发任务,加快代码编写速度。

    上一篇:懒人IDEA 常用快捷键大全
    下一篇:Springboot整合log4j2日志全解

    发表评论

    最新留言

    能坚持,总会有不一样的收获!
    [***.219.124.196]2025年04月19日 03时07分21秒