【Spring Boot 快速入门】六、Spring Boot集成Lombok

2,282 阅读3分钟

这是我参与8月更文挑战的第12天,活动详情查看:8月更文挑战

收录专栏

Spring Boot 快速入门

Java全栈架构师

前言

  相信大部分开发人员都遇到过,在java中对象出现大量的属性生成构造器、getter/setter、equals、hashcode、toString方法,显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。那么有没有比较好的方法去简化这些冗余的低效的代码呢,现在给大家介绍Lombok。

初始

  Lombok 是一种 Java 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现 Lombok,开发人员可以节省构建诸如 hashCode() 和 equals() 这样的方法以及以往用来分类各种 accessor 和 mutator 的大量时间。

Lombok 缺点

  • 消除冗余低效的代码
  • 注释实现快速开发

Lombok 缺点

  • 强行安装,如果团队中一个人使用了Lombok插件,所有人必须安装。
  • 代码可读性,可调试性低,开发过程中缺少响应的方法,在编译阶段才生成。
  • 有未知的风险:开发者对其产生过度依赖,容易产生意想不到的结果。
  • 影响升级:对于代码有很强的侵入性,对JDK的升级和框架的升级,
  • 破坏封装性,代码耦合度增加,对项目有一定的干扰。

Lombok注解

注解描述
@NonNull在方法或者构造方法前进行参数非空检查
@Cleanup自动资源管理,安全的调用close方法
@Getter成员变量生成对应的set方法
@Setter成员变量生成对应的get方法
@ToString生成toString,equals和hashcode方法
@EqualsAndHashCode生成toString、equals、hashcode和canEqual方法
@NoArgsConstructor为类产生无参的构造方法
@RequiredArgsConstructor类中所有带有@NonNull注解的或者带有final修饰的成员变量生成对应的构造方法
@AllArgsConstructor为类产生包含所有参数的构造方法
@Data注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@Value和@Data类似,定义为private final修饰,并且不会生成set方法
@SneakyThrows捕获异常并在catch中用Lombok.sneakyThrow(e)把异常抛出
@Synchronized和synchronized关键字相同
@Log注解用在类上,直接进行日志记录

Lombok安装

设置

  选择file目录点击settings。 图片.png   选择plugins,搜索lombok。 图片.png 选择安装即可。

添加依赖

      <!-- lombok start -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.18</version>
            <scope>provided</scope>
        </dependency>
        <!-- lombok end -->

更多快速入门参考: 【快速开发】Lombok 快速入门

结语

    这样Lombok与Spring Boot集成成功啦。更多的测试大家可以深入研究一下Lombok相关信息,相信一定会有新大陆发现的。

    作者介绍:【小阿杰】一个爱鼓捣的程序猿,JAVA开发者和爱好者。公众号【Java全栈架构师】维护者,欢迎关注阅读交流。

    好了,感谢您的阅读,希望您喜欢,如对您有帮助,欢迎点赞收藏。如有不足之处,欢迎评论指正。下次见。

推荐阅读:

我的第一个Spring Boot项目启动啦!

周末建立了Spring Boot专栏,欢迎学习交流

Spring Boot集成MyBatis,可以连接数据库啦!

【Spring Boot 快速入门】四、Spring Boot集成JUnit

【Spring Boot 快速入门】五、Spring Boot集成Swagger UI