使用Lombok总结
Lombok学习总结
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
Lombok介绍:
通过简单的注解来精简代码达到消除冗长代码的目的
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总结的更多相关文章
- 记录一次bug解决过程:eclipse集成lombok插件
一 总结 eclipse集成插件lombok: 启动Spring Boot项目: sublime全局搜索关键字:ctrl + shift + F JDK8中的lambda表达式使用 二 BUG描述:集 ...
- lombok在IntelliJ IDEA下的使用
lombok是一款可以精减java代码.提升开发人员生产效率的辅助工具,利用注解在编译期自动生成setter/getter/toString()/constructor之类的代码.代码越少,意味着出b ...
- lombok 简化java代码注解
lombok 简化java代码注解 安装lombok插件 以intellij ide为例 File-->Setting-->Plugins-->搜索"lombok plug ...
- Lombok 安装、入门 - 消除冗长的 java 代码
lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码. lombok 的官方网址:http://projectlombok.org/ lombok 安装1. ...
- lombok介绍
Lombok是一种JavaArchive(JAR)文件,可用来消除Java代码的冗长.在写代码时,可以通过这个插件消除各种getter和setter,toString等常用方法. lombok 注解: ...
- Lombok简化Java代码
导包:import lombok.Data; Lombok简化Java代码: 在Lombok中,生成构造方法的annotation一共有三个:@NoArgsConstructor, @Required ...
- myeclipse 手动安装 lombok
1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini 所在的文件夹目录下 2. 打开 eclipse.ini / myeclipse.ini,在最后面插 ...
- lombok+slf4j+logback SLF4J和Logback日志框架详解
maven 包依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lomb ...
- Java代码简化神器-Lombok
一.背景 前段时间在开源社区中发现了一个比较牛逼的简化Java代码的神器-Lombok,接着自己写了demo进行测试和练习,感觉真的很不错,特此分享给需要的小伙伴们~ 二.开发之前的准备 1.lomb ...
- MyEclipse安装lombok
1. 将lombok.jar复制到myeclipse.ini所在的文件夹 2. 打开myeclipse.ini,插入以下两行: -Xbootclasspath/a:lombok.jar-javaage ...
随机推荐
- Docker镜像使用
当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载. 下面我们来学习: 1.管理和使用本地 Docker ...
- 范仁义html+css课程---2、html常用标签
范仁义html+css课程---2.html常用标签 一.总结 一句话总结: html常用的标签有 标题标签.div.span.p.hr.br标签 等 1.html中的标题标签有哪些? <h1& ...
- Ubuntu --- 安装deb包
在Ubuntu下安装deb包需要使用dpkg命令.Dpkg 的普通用法: 1.sudo dpkg -i <package.deb> 安装一个 Debian 软件包,如你手动下载的文件. 2 ...
- MAC 上抓取网页数据的工具有哪些?
我希望能够从网页上, 比如气象局数据, 财经数据等等, 我看到官方提供的数据都比较混乱, 有的是一个php文件, 有的是一个文本, 有的干脆不提供数据, 我想问, Mac上, 用什么工具去抓数据, 以 ...
- 数据库中的union与union all的区别
Union因为要进行重复值扫描,所以效率低.如果合并没有刻意要删除重复行,那么就使用Union All 两个要联合的SQL语句 字段个数必须一样,而且字段类型要“相容”(一致): 如果我们需要将两个 ...
- 设定rsync开机自启动
1.启用rsync服务systemctl enable rsync 2.打开rsync自己的开关,这个找了好多地方才找到的vi /etc/default/rsyncRSYNC_ENABLE=true
- FrameLayout--霓虹灯
主函数里面,新建一个线程,控制改变背景色 package com.example.framelayout import android.support.v7.app.AppCompatActivity ...
- 泡泡一分钟:Robust and Fast 3D Scan Alignment Using Mutual Information
Robust and Fast 3D Scan Alignment Using Mutual Information 使用互信息进行稳健快速的三维扫描对准 https://arxiv.org/pdf/ ...
- Spring cloud微服务安全实战-6-6jwt改造之日志及错误处理(2)
第一次请求失败了 打印出了403,第二次更新成功 现在只处理了403这种情况,还有一种情况就是401,就是当前用户需要做身份认证,你没有做身份认证. 401的处理 与403类似,也是在这里配置.Ent ...
- [ jenkins ] 基础安装及权限管理
1. 安装 jenkins 在安装 jenkins 之前需要 java 的支持 (1)安装 jdk1.8 [root@192.168.118.17 ~]#tar xf jdk-8u77-linux-x ...