Lombok是什么

Lombok可以通过注解形式帮助开发人员解决POJO冗长问题,帮助构造简洁和规范的代码,通过注解可产生相应的方法。

Lombok如何在IDEA中使用

我们都知道,使用一种工具,一定要在Maven中添加相应的依赖

在pom.xml中添加依赖

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.6</version>
</dependency>

然而,你会发现除了依赖,你还需要下载IntelliJ Lombok plugin插件

在IDEA中下载插件

  • 打开File-->Settings(Ctrl+Alt+S)
  • Plugins查找Lombok
  • 安装

Lombok常用注解

  • @Getter和@Setter

Lombok为POJO自动生成getter和setter方法

  • @ToString

自动生成toString()方法,默认情况,按顺序(以“,”分隔)打印你的类名称以及每个字段。也可以设置不包含哪些字段@ToString(exclude = {“id”,”name”})

  • @EqualsAndHashCode

自动重写Equals和hashCode方法

  • @AllArgsConstructor

会生成一个含所有参数的构造函数

  • @NoArgsConstructor

会生成一个无参构造函数

  • @Data

包含@Getter、@Setter、@ToString、@EqualsAndHashCode和@NoArgsConstructor几项功能

  • @Slf4j

类上注解,直接调用log即可。log.info(****)

  • @Cleanup

自动化关闭流,相当于jdk1.7中的try with resource

@Cleanup
InputStream in = new FileInputStream("***");
@Cleanup
OutputStream out = new FileOutputStream("***");
  • @NonNull

public NonNullExample(Student student){
      this.student = student;
}

转换成:

public NonNullExample(Student student){
if(student == null){
throw new NullPointException("student");
}
this.student = student;
}
  • @Synchronized

给方法加上同步锁,建议在代码块中写Synchronized

参考文章  链接:https://www.cnblogs.com/qnight/p/8997493.html

了解Lombok插件的更多相关文章

  1. 记录一次bug解决过程:eclipse集成lombok插件

    一 总结 eclipse集成插件lombok: 启动Spring Boot项目: sublime全局搜索关键字:ctrl + shift + F JDK8中的lambda表达式使用 二 BUG描述:集 ...

  2. Lombok插件看法浅谈

    背景 最近接触的几个工程中Lombok插件出现频率比较高,趁机了解一下原理. 简要说明: 受益于JSR 269 API,程序可以在编译阶段对AST进行节点的操作,从而注入相关的功能结点,从而包含在最终 ...

  3. Mac 下eclipse安装Lombok插件

    在官网下载最新版本的 JAR 包. 将 lombok.jar 放在eclipse安装目录下,和 eclipse.ini 文件平级的. 注意,mac操作系统下eclipse的安装路径下有两个eclips ...

  4. IDE安装Lombok插件提高开发效率

    Lombok官方api:https://projectlombok.org/features/index.html 使用lombok之后,省去了许多没必要的get,set,toString,equal ...

  5. IDEA安装Lombok插件失败的解决方案

    作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. Lombok简介 Lombok是Java语言的实用工具,确切的说,应 ...

  6. LomBok插件的使用

    LomBok插件的使用 By Zhai 简介: LomBok是一个通过简单注解就可以减少一些冗余代码编写的小工具.例如 @Setter @Getter 用于实例类上该类就不需要写set get 方法. ...

  7. eclipse 安装 lombok插件

    下载插件 官网下载 :https://projectlombok.org/ 有些小伙伴官网可能打不开,现提供我的下载地址:https://files.cnblogs.com/files/niceyoo ...

  8. lombok插件:Data自动get/set方法, Slf4j实现Logger的调用

    lombok插件:Data自动get/set方法, Slf4j实现Logger的调用 lombok.Data import lombok.Data; import org.hibernate.anno ...

  9. idea本地安装 lombok插件

    转:https://blog.csdn.net/weixin_41404773/article/details/80689639 idea本地安装 lombok插件 项目中经常使用bean,entit ...

  10. mybatis generator插件系列--lombok插件 (减少百分之九十bean代码)

    经常使用mybatis generator生成代码的你 有没有因为生成的getter/setter而烦恼呢? 有没有生成后又手动加toString/hashCode/Equals方法呢? 有没有改一个 ...

随机推荐

  1. 图论--LCA--Tarjan(离线)

    * * 给出一颗有向树,Q个查询 * 输出查询结果中每个点出现次数 * 复杂度O(n + Q); */ const int MAXN = 1010; const int MAXQ = 500010; ...

  2. Haporxy

    安装Haproxy: 下载 wget https://fossies.org/linux/misc/haproxy-1.8.3.tar.gz tar -zxf haproxy-.tar.g cd ha ...

  3. 5) ModelSerializer(重点) 基表 测试脚本 多表关系建外键 正反查 级联 插拔式连表 序列化反序列化整合 增删查 封装response

    一.前戏要做好 配置:settings.py #注册drf INSTALLED_APPS = [ # ... 'api.apps.ApiConfig', 'rest_framework', ] ​ # ...

  4. 用纯css、JavaScript、jQuery简单的轮播图

    完成一个可以自动切换或点击数字的轮播图 HTML代码只需要一个div 包含着一个图片和一个列表,我们主要的思路就是通过点击相应的数字,改变图片的 路径. 有4张图片都在img文件夹里,名称为  img ...

  5. C. Journey bfs 拓扑排序+dp

    C. Journey 补今天早训 这个是一个dp,开始我以为是一个图论,然后就写了一个dij和网络流,然后mle了,不过我觉得如果空间开的足够的,应该也是可以过的. 然后看了题解说是一个dp,这个dp ...

  6. spring学习笔记(一)@ConfigurationProperties注解

    结论: 这个注解主要是为了将配置文件中的属性映射到实体类上,并且支持嵌套映射. 代码说明: @ConfigurationProperties(prefix = "person") ...

  7. 【FreeRTOS学习02】源码结构/数据类型/命名规则总结

    个人不是很喜欢FreeRTOS的编程风格,但是没办法,白嫖人家的东西,只能忍了,这里先简单总结一下: 相关文章 [FreeRTOS实战汇总]小白博主的RTOS学习实战快速进阶之路(持续更新) 文章目录 ...

  8. Spring DI使用详解

    Spring DI使用详解 一.介绍 DI的定义:依赖注入,为类里面的属性设值.例如,我们之前的setName方法就是在为name属性设值. IOC与DI的关系:IOC进行对象的创建,DI进行值的注入 ...

  9. [ACdream 1212 New Year Bonus Grant]贪心

    题意:员工之间形成一棵树,上级可以给下级发奖金,任何一个人最多可以给一个下级发,并且发了奖金后就不能接受奖金.求总共最多可以产生多少的奖金流动 思路:每次选择没有下级并且有上级的员工a,令它的上级为b ...

  10. C:复试

    C语言程序设计基础知识 C语言特点 1.是一种兼有高级语言和汇编语言优点的语言 2.是一种结构化程序设计语言 3.数据类型丰富 4.具有丰富的运算符 5.具有预处理功能 合理算法的特点 1.有输入 2 ...