Lombok 只会用@Setter @Getter @Data ? 老鸟带你玩转lombok

lombok的官网

官方网址 : https://projectlombok.org

lombok 稳定特性文档:https://projectlombok.org/features/

lombok 实验特性文档: https://projectlombok.org/features/experimental/

lombok是什么?

​ Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能。说简单点,它是对Java语言的一个增强,相当于java的语法糖概念。这里不做太多的解释。阅读本文章需要有一定的实操经验,也完全使用过lombok插件。

lombok能做什么?

lombok 有哪些注解?

稳定特性:

  • var 用于定义变量、来自 import lombok.var;
  • val 用于定义常量、来自 import lombok.val;
  • @NonNull ⽤来指定某个⽅法⼊参不能为null 若为null 将抛出空指针异常 。 来自 import lombok.NonNull;
  • @Cleanup 自动资源管理、默认调用close()方法。来自 import lombok.Cleanup;
  • @Getter/@Setter 用来生成类的字段的setXX()、getXX()方法。来自 import lombok.Setter; import lombok.Getter;
  • @ToString 用来生成类的toString()方法。来自 import lombok.ToString;
  • @EqualsAndHashCode用来生成类的equals()与hashCode()方法。来自 import lombok.EqualsAndHashCode;
  • @NoArgsConstructor, @RequiredArgsConstructor @AllArgsConstructor用于生成类的构造函数、无参构造、可选参构造、全参构造。来自 import lombok.NoArgsConstructor; import lombok.RequiredArgsConstructor;import lombok.AllArgsConstructor;
  • @Data@ToString @EqualsAndHashCode @Getter @Setter @RequiredArgsConstructor 的合集表示。来自 import lombok.Data;
  • @Value用于将类变成final 。来自import lombok.Value;
  • @Builder用来生成对象的builder模式,并且可以为对象链式赋值。来自import lombok.Builder;
  • @SneakyThrows 用于消除编译时异常、转化为运行时异常。来自import lombok.SneakyThrows;
  • @With 用于为类全局字段变量生成以'withXX'的方法返回新的类对象。依赖@AllArgsConstructor;来自import lombok.With;
  • @Getter(lazy=true) 用于懒加载的方式初始化变量,此字段必须为final。来自import lombok.Getter;
  • @Log @CommonsLog 、@Flogger、@JBossLog、@Log4j、@Log4j2、@Slf4j、@XSlf4j、@CustomLog 用于打印日志。来自 import lombok lombok.extern.*;

实验特性:

lombok怎么用?

posted on 2022-11-28 15:59  LiuShuku  阅读(262)  评论(0编辑  收藏  举报

导航