Spring Boot提高开发效率必备工具lombok使用

作者:字母哥 时间:2022-05-21 08:22:38 

使用lombok插件的好处

我们在java开发过程中,经常会有一些常规性的,重复性的工作。比如:

  • 根据成员变量生成get和set方法

  • 根据成员变量生成类的构造函数

  • 重写toString()和hashCode方法

  • 引入日志框架logFactory,用来打印日志

以上都是一些重复动作,模板代码。每次都手动生成既浪费时间,又增加了大量的冗余代码。我们可以使用lombok插件来解决这个问题。使我们的编码效率得到大幅度的提高!

如何安装lombok插件

笔者以InelliJ IDEA为例,安装lombok插件。打开 IDEA 的 File->Settings 面板,并选择 Plugins 选项,然后点击 “Browse repositories”。在搜索框输入”lombok”,结果中找到lombok点击install,然后重启 IDEA。

Spring Boot提高开发效率必备工具lombok使用

我们还要在pom.xml里面加上如下依赖,插件生效。

<dependency>
           <groupId>org.projectlombok</groupId>
           <artifactId>lombok</artifactId>
           <optional>true</optional>
</dependency>

在Spring Boot项目里面不需要加入版本号,spring Boot父项目会代为管理。如果是其他项目,请自行添加版本号!

使用lombok注解简化开发

Data注解

在java类上使用@Data注解,将为我们在编译期自动生成

  • 成员变量的get和set方法

  • equals方法

  • canEqual方法

  • hashCode方法

  • toString方法

Spring Boot提高开发效率必备工具lombok使用

上图左侧是使用lombok注解Data,右侧是java字节码class文件反编译结果

Slf4j注解

将在编译期自动帮我们引入Logger日志常量,我们在代码中就直接使用log.info或log.debug打印日志即可。下图中红色代码就用Slf4j注解代替就可以了。

Spring Boot提高开发效率必备工具lombok使用

Builder注解

在Java类上使用Builder注解之后,我们可以使用如下代码为对象属性赋值

LombokPOJO lombokPOJO = LombokPOJO.builder()
       .name("kobe")
       .age(39)
       .build();

Spring Boot提高开发效率必备工具lombok使用

AllArgsConstructor注解

AllArgsConstructor注解将为我们在编译期自动生成:全参构造函数。

Spring Boot提高开发效率必备工具lombok使用

有全参构造函数注解,自然就有无参构造函数注解:NoArgsConstructor注解。

lombok有非常多的好用的注解,这里给大家集中介绍几个经常会用到的。更多的用法参考github(插件安装图中,有github连接,上图中黄色区域)

来源:https://www.kancloud.cn/hanxt/springboot2/1315474

标签:SpringBoot,lombok,效率工具
0
投稿

猜你喜欢

  • 详解Android Studio如何导入第三方类库、jar包和so库

    2022-01-04 22:27:54
  • Java中Spring Boot+Socket实现与html页面的长连接实例详解

    2022-12-24 12:06:12
  • Java GC 机制与内存分配策略详解

    2022-06-12 05:36:44
  • Java如何把int类型转换成byte

    2023-03-13 11:12:39
  • C#泛型类创建与使用的方法

    2023-02-28 21:26:36
  • Jsoup获取全国地区数据属性值(省市县镇村)

    2023-12-08 01:27:25
  • 基于Java实现经典蜘蛛纸牌游戏

    2021-09-06 15:22:57
  • Java8 使用 stream().sorted()对List集合进行排序的操作

    2022-11-23 20:57:11
  • Java中JMM与volatile关键字的学习

    2022-03-24 00:12:00
  • Feign调用中的两种Header传参方式小结

    2022-10-25 02:47:17
  • Springboot公共字段填充及ThreadLocal模块改进方案

    2023-11-17 22:58:39
  • C#基于OLEDB获取Excel文件表结构信息的方法

    2022-03-06 07:29:44
  • Android handle-message的发送与处理案例详解

    2023-07-21 09:28:13
  • 使用C#实现在屏幕上画图效果的代码实例

    2022-09-11 05:12:32
  • SpringBoot+JWT实现注册、登录、状态续签流程分析

    2022-09-29 09:07:11
  • C#添加、读取Word脚注尾注的方法

    2022-12-24 02:12:22
  • C#文件断点续传实现方法

    2023-09-07 18:35:05
  • Java emoji持久化mysql过程详解

    2023-10-10 23:11:49
  • Android支付宝支付的示例代码

    2022-06-20 02:32:49
  • Android组件Glide实现图片平滑滚动效果

    2022-02-24 22:53:14
  • asp之家 软件编程 m.aspxhome.com