【学习笔记】Lombok的使用

Lombok的使用

Lombok是一款java开发插件,它可以通过注解来减少业务中冗长和繁琐的代码,尤其是对于简单的java模型对象(POJO)。

使用步骤:

  1. 在IDEA中下载Lombok插件

    在setting中找到Plugins,搜索lombok,install即可

  2. 在项目中引入lombok的jar包

    可以从maven仓库中搜索lombok依赖

    <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.24</version>
        <scope>provided</scope>
    </dependency>
    ​
  3. 在实体类上加注解

 

当前版本lombok全部注解:

@Getter and @Setter
@FieldNameConstants
@ToString
@EqualsAndHashCode
@AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data
@Builder
@SuperBuilder
@Singular
@Delegate
@Value
@Accessors
@Wither
@With
@SneakyThrows
@val
@var
experimental @var
@UtilityClass

 

常用注解:

@Data : 无参构造、get、set、equals、hashCode、toString

@AllArgsConstructor : 全部参数构造器

@NoArgsConstructor :无参构造

@Getter and @Setter :get、set

@ToString :toString方法 @EqualsAndHashCode :equals和hashcode方法

image-20230105120418460

 

注意点:

  • @Getter and @Setter 注解作用域是类和变量,作用在类上,是给所有的变量都写get和set方法。作用在变量上是只给那一个变量写get和set方法。

  • @Data 只有无参构造,如果想要使用@AllArgsConstructor加有参构造,那么之前的@Data生成的无参构造就消失了(因为java规定想要有参构造和无参构造必须显示定义无参构造),这时可以自己手写无参构造,也可以使用 @NoArgsConstructor

  • lombok虽然简单方便,但是存在一些争议,有人认为像lombok这种直接简化Java项目源码的插件会使Java走向灭亡。

posted @ 2023-01-05 12:12  GrowthRoad  阅读(30)  评论(0编辑  收藏  举报