lombok效率神奇使用

Lombok效率神器

标签(空格分隔): Java


Lombok简介及使用

Lombok 是一种 Java实用工具,可用来帮助开发人员消除Java的冗长,尤其是对于简单的Java对象(POJO), 它通过注释实现这一目的。一个标准的Java bean 一般具有若干属性,每个属性具有getter()和setter()方法,Lombok中也用到了注解,但是它并没有用到反射,而是通过在代码编译时期动态将注解替换为具体的代码。所以JVM实际运行的代码,和我们手动编写的包含了各种工具方法的类相同。
如果想在开发时候使用lombok 简介化代码:

IDEA plugin 中添加 lombok支持

添加maven依赖

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

可以设置为provide ,使其仅在编译期起作用。
maven库:@https://mvnrepository.com/artifact/org.projectlombok/lombok

Lombok注解

val: final 像动态语言一样,声明一个fianl的变量。
var: 同JDK10
@Data:注解在类上,将类提供的所有属性都添加get、set方法,并添加、equals、canEquals、hashCode、toString方法
@Setter:注解在类上,为所有属性添加set方法、注解在属性上为该属性提供set方法
@Getter:注解在类上,为所有的属性添加get方法、注解在属性上为该属性提供get方法
@NotNull:在参数中使用时,如果调用时传了null值,就会抛出空指针异常
@Synchronized 用于方法,可以锁定指定的对象,如果不指定,则默认创建一个对象锁定
@Log作用于类,创建一个log属性
@Builder:使用builder模式创建对象
@NoArgsConstructor:创建一个无参构造函数
@AllArgsConstructor:创建一个全参构造函数
@ToString:创建一个toString方法
@Accessors(chain = true)使用链式设置属性,set方法返回的是this对象。
@RequiredArgsConstructor:创建对象, 例: 在class上添加@RequiredArgsConstructor(staticName = "of")会创建生成一个静态方法
@UtilityClass:工具类
@ExtensionMethod:设置父类
@FieldDefaults:设置属性的使用范围,如private、public等,也可以设置属性是否被final修饰。
@Cleanup: 关闭流、连接点。
@EqualsAndHashCode:重写equals和hashcode方法。
@toString:创建toString方法。
@Cleanup: 用于流等可以不需要关闭使用流对象.

例子

1,使用lombok,代码可以简化为以下,自动生成属性的get set 方法。

import lombok.*;
@Setter
@Getter

public class Dog {
    String name; //默认为   friend级别
    int age;
}

@Accessors(chain = true):使用链式创建:

@Setter
@Getter
@Accessors(chain = true)
public class Dog {
    private String name;
    private Integer age;
}

public static void main(String[] args) {
    //使用@Accessors(chain = true)
    Dog dog = new Dog();
    dog.setName("A").setAge(1);
}

其他用法待续。

原文地址:https://www.cnblogs.com/hit-zb/p/10850326.html

时间: 2024-10-16 20:25:29

lombok效率神奇使用的相关文章

【效率神奇】Github丧心病狂的9个狠招

Github,一个被业内朋友成为「全球最大的同性交友社区」的平台. 小时候遇到不会的字可以查新华字典.后来写作文我们可以通过作文书.或者文摘去找合适的素材.同样,写代码可以去Github上找适合自己的代码片段,甚至开源框架.不再重复造轮子,带来的好处不言而喻. Github在年初宣布个人私有仓库免费,小伙伴们拍手叫好.除了日常的托管代码功能以外.还可以在上面搭建博客,写技术教程或者书籍,发布一些日常的碎碎念,当然你也可以follow一些大佬,关注他们的日常动态. 今天主要分享一些检索上的技巧,能

IDEAL葵花宝典:java代码开发规范插件 lombok 插件

前言: lombok简介: lombok是暑假来到公司实习的时候发现的一个非常好用的小工具,刚见到的时候就感觉非常惊艳,有一种相见恨晚的感觉,用了一段时间之后感觉的确挺不错,所以特此来推荐一下. 那么lombok到底是个什么呢,lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,简单来说,比如我们新建了一个类,然后在其中写了几个字段, 然后通常情况下我们需要手动去建立getter和setter方法啊,构造函数啊之类的,lombok的作用就是

lombok简介及使用

lombok简介 lombok是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,简单来说,比如我们新建了一个类,然后在其中写了几个字段,然后通常情况下我们需要手动去建立getter和setter方法啊,构造函数啊之类的,lombok的作用就是为了省去我们手动创建这些代码的麻烦,它能够在我们编译源码的时候自动帮我们生成这些方法. lombok能够达到的效果就是在源码中不需要写一些通用的方法,但是在编译生成的字节码文件中会帮我们生成这些方法,这就是lom

项目环境搭建——配置2019.1.9

1.maven: (1)阿里云仓库镜像: <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror> 如果镜像不可以的话或者下载太慢 可以

《批处理在提高Windows管理效率中神奇应用》学习01

<批处理在提高Windows管理效率中神奇应用>学习 ::1.3 ::echo. 显示空行 ::数值范围循环的for循环 @echo off echo Creating file0.txt ~ file99.txt echo. echo. :: for /l %%n in (0,1,99) /l表示for语句在指定的数值范围内循环.范围由in决定 ::in (0,1,99) 表示从0开始,步长为1,到99结束(包含99) for /l %%n in (0,1,99) do ( echo %%n

Java效率工具Lombok使用与原理

Java效率工具Lombok使用与原理 我个人觉得 Lombok是一个优化Java代码以及提升开发效率不错的工具.Lombok 的Github地址为:https://github.com/rzwitserloot/lombok ,目前已经有7.9k star.Lombok主要为Java提供了不少语法糖,其中很多的设计都符合<Effective Java>所描述的Java编程最佳实践.Lombok 的学习成本很低,几乎可以直接上手,但是在团队开发的时候要注意,如果团队开发要使用这种工具一定要沟通

Java效率工具Lombok使用及原理

还在编写无聊枯燥又难以维护的POJO吗?洁癖者的春天在哪里?请看Lombok! 在过往的Java项目中,充斥着太多不友好的代码:POJO的getter/setter/toString:异常处理:I/O流的关闭操作等等,这些样板代码既没有技术含量,又影响着代码的美观,Lombok应运而生. 首先说明一下:任何技术的出现都是为了解决某一类问题的,如果在此基础上再建立奇技淫巧,不如回归Java本身.应该保持合理使用而不滥用. Lombok的使用非常简单,下面我们一起来看下: 1)引入相应的maven包

神奇的效率 WIN+ 组合键

win键 下文简称 win,是日常办公中除了Ctrl + C 以外的高效组合键 win+1.2.3-阿拉伯数字  按照在任务栏的排列顺序,快速启动的固定在任务栏的快捷方式,或者打开已经打开的该程序 win+shift+1.2.3- 按照顺序开启新的任务栏图标窗口 win+alt+1.2.3- 按照顺序显示任务栏的右键属性 win+break 当前界面启动系统属性管理界面 win+b 选中右下方工具栏 win+d显示桌面 win+e打算资源管理器 win+f 显示查找所有文件 win+l锁定计算机

【转】Lombok介绍、使用方法和总结

链接:http://www.yuanrengu.com/index.php/20180324.html 1 Lombok背景介绍 官方介绍如下: Project Lombok makes java a spicier language by adding 'handlers' that know how to build and compile simple, boilerplate-free, not-quite-java code. 大致意思是Lombok通过增加一些“处理程序”,可以让ja