Lombok学习总结

Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.

Lombok介绍:

官网:https://projectlombok.org/

通过简单的注解来精简代码达到消除冗长代码的目的

Lombok优点:提高编码效率,使代码更简洁,消除冗长代码,避免修改字段名字时忘记修改方法名

注意:idea上必须要支持Lombok,否则报错

Lombok引入:

maven引入:

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

idea插件:

在实体类可以用idea快捷键 Ctrl+F12 查看方法

Lombok相关注解:

这里只说明下常用的,官方说明都有(https://projectlombok.org/features/all)

@Data 
注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
使用 @Data 注解就可以有这几个注解的功能:@ToString 、@Getter 、@Setter 、@EqualsAndHashCode 、@NoArgsConstructor
@Setter
注解在属性上;为属性提供 setting 方法
@Getter
注解在属性上;为属性提供 getting 方法
@Log4j
@Slf4j
注解在类上;为类提供一个 属性名为log 的 log4j 日志对象 具体看项目中用到的日志框架
@NoArgsConstructor 
注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor
注解在类上;为类提供一个全参的构造方法,同时如果变量使用了NotNull annotation , 会进行是否为空的校验, 
全部参数的构造函数的自动生成,该注解的作用域也是只有在实体类上,参数的顺序与属性定义的顺序一致。
@Cleanup
自动化关闭流,相当于 jdk1.7 中的 try with resource
@Builder
被注解的类加个构造者模式
@Synchronized
加个同步锁 方法中所有的代码都加入到一个代码块中,默认静态方法使用的是全局锁,普通方法使用的是对象锁,当然也可以指定锁的对象。 @SneakyThrows
等同于try/catch 捕获异常 当我们需要抛出异常,在当前方法上调用,不用显示的在方法名后面写 throw
@NonNull
如果给参数加个这个注解 参数为null会抛出空指针异常
@Value
注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法。
@toString
注解在类上;为类提供toString方法(可以添加排除和依赖) @RequiredArgsConstructor
会生成一个包含常量(final),和标识了@NotNull的变量 的构造方法。 @Accessors
翻译是存取器。通过该注解可以控制getter和setter方法的形式。
fluent 若为true,则getter和setter方法的方法名都是属性名,且setter方法返回当前对象
chain 若为true,则setter方法返回当前对象
prefix 若为true,则getter和setter方法会忽视属性名的指定前缀(遵守驼峰命名)

使用Lombok总结的更多相关文章

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

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

  2. lombok在IntelliJ IDEA下的使用

    lombok是一款可以精减java代码.提升开发人员生产效率的辅助工具,利用注解在编译期自动生成setter/getter/toString()/constructor之类的代码.代码越少,意味着出b ...

  3. lombok 简化java代码注解

    lombok 简化java代码注解 安装lombok插件 以intellij ide为例 File-->Setting-->Plugins-->搜索"lombok plug ...

  4. Lombok 安装、入门 - 消除冗长的 java 代码

    lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码. lombok 的官方网址:http://projectlombok.org/  lombok 安装1. ...

  5. lombok介绍

    Lombok是一种JavaArchive(JAR)文件,可用来消除Java代码的冗长.在写代码时,可以通过这个插件消除各种getter和setter,toString等常用方法. lombok 注解: ...

  6. Lombok简化Java代码

    导包:import lombok.Data; Lombok简化Java代码: 在Lombok中,生成构造方法的annotation一共有三个:@NoArgsConstructor, @Required ...

  7. myeclipse 手动安装 lombok

    1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini 所在的文件夹目录下    2. 打开 eclipse.ini / myeclipse.ini,在最后面插 ...

  8. lombok+slf4j+logback SLF4J和Logback日志框架详解

    maven 包依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lomb ...

  9. Java代码简化神器-Lombok

    一.背景 前段时间在开源社区中发现了一个比较牛逼的简化Java代码的神器-Lombok,接着自己写了demo进行测试和练习,感觉真的很不错,特此分享给需要的小伙伴们~ 二.开发之前的准备 1.lomb ...

  10. MyEclipse安装lombok

    1. 将lombok.jar复制到myeclipse.ini所在的文件夹 2. 打开myeclipse.ini,插入以下两行: -Xbootclasspath/a:lombok.jar-javaage ...

随机推荐

  1. 巧用DNSlog实现无回显注入【转载】

    原作者:afanti 原出处:https://www.cnblogs.com/afanti/p/8047530.html 0x00 简介 测试一些网站的时候,一些注入都是无回显的,我们可以写脚本来进行 ...

  2. SQL Server 静默安装

    SQL Server 安装时,需要在各个安装窗口进行选择和设置,若需要在多台服务器安装相同的数据库,静默安装是比较省事的. 当安装 SQL Server  到最后一步,会有一个安装配置文件 Confi ...

  3. 《Linux设备驱动程序》编译LDD3的scull驱动问题总结***

    由于Linux内核版本更新的原因,LDD3(v2.6.10)提供的源码无法直接使用,下面是本人编译scull源码时出现的一些问题及解决方法.编译环境:Ubuntu 10.04 LTS(kernel v ...

  4. vuejs2从入门到精通视频教程

    https://www.cnblogs.com/web-666/p/8648607.html 一.基础部分 0.课件 1.介绍 2.vue实例 3.模板语法 4.计算属性和观察者 5.Class与St ...

  5. ArcPy地理处理工具案例教程—批量添加栅格数据

    ArcPy地理处理工具案例教程-批量添加栅格数据 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com 关键字: Arcpy,python,地理处理工 ...

  6. CentOS 安装抓包工具wireshark-tshark抓包工具

    原文出处:razeen -> https://razeen.me/post/how-to-install-tshark-on-centos.html 准备在服务器上用tshark抓包,分析一下数 ...

  7. 干货满满!10分钟看懂Docker和K8S(转)

    2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司. 这家公司主要提供基于PaaS的云计算技术服务.具体来说,是和LXC有关的容器技术. LXC,就是Linux容器虚 ...

  8. Java基础 import 要在所有的class前面

        JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code ...

  9. ubuntu18设置root账号的开机登录

    date: 2019-08-20  17:36:49 author: headsen chen notice :个人原创 1,用普通用户登录. su - root 打开终端 vi /etc/pam.d ...

  10. ISO/IEC 9899:2011 条款6.8.4——选择语句

    6.8.4 选择语句 语法 1.selection-statement: if    (    expression    )    statement if    (    expression   ...