首页
学习
活动
专区
圈层
工具
发布

lombok注解

——《诗经》 首先是官方文档,列举了所有注解 常用的我就不聊了,这里上代码聊聊不咋常用的 首先是@Cleanup注解,能够自动关闭流 public static String readFile(File...\n"); line = reader.readLine(); } return builder.toString(); } 最后生成的代码: 然后是@NonNull注解...,加到我们的参数上 就会自动生成如下代码: 如果@NonNull加在属性上,也会在之后生成的setter判空 接下来是@RequiredArgsConstructor注解,它可以生成一个静态构造函数...,效果如下: @Value注解和@RequiredArgsConstructor注解差不多 生成效果如下: 对于@Singular注解,它可以和@Builder建造者模式配合使用,针对List等集合类型的属性生成对应的操作函数...包里的注解我们下次再叙吧

36210
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    lombok注解笔记

    注解 @AllArgsConstructor 作用 生成包含所有字段的构造器 参数 staticName : 不为空的话,生成一个静态方法返回实例,并把构造器设置为private @AllArgsConstructor...of:与exclude相反,设置of,exclude失效 onParam:添加注解,参考@Getter#onMethod @Generated 作用 这个注解似乎没有实在的作用,就是标记这个类、字段、方法是自动生成的...写在某个字段上就作用与该字段 参数 onMethod:把需要添加的注解写在这 例子 public class Example { @Getter(onMethod_={@Deprecated}...,见@Getter#onMethod onParam:在方法的参数上添加注解,见@Getter#onMethod value:访问权限修饰符 @Singular 作用 这个注解和@Builder一起使用...在lombok.experimental包下 @Accessors 作用 默认情况下,没什么作用,需要设置参数 参数 chain:为true时,setter链式返回,即setter的返回值为this

    1.5K20

    lombok系列2:lombok注解详解

    开篇 看到第一篇《初识lombok》你可能意犹未尽,本文我们按照场景来介绍一下常用的注解。 未特别说明,均标注在类级别。...如果需要,自己添加一个,或者增加一个后面介绍的lombok.NoArgsConstructor注解。...提供了三个构造器注解,分别为: lombok.AllArgsConstructor 增加全参构造器 lombok.NoArgsConstructor 增加无参构造 lombok.RequiredArgsConstructor...lombok.Getter 增加Getter方法 lombok.Setter 增加Setter方法 lombok.Cleanup 该注解的对象,如Stream对象,如果有close()方法,那么在该对象作用域离开时会自动关闭...日志相关注解 lombok提供了一组日志相关注解,标注的类会隐式的定一个了一个名为log的日志对象。

    1.2K20

    lombok常用注解整理

    转载自 https://blog.csdn.net/u011308294/article/details/78627560 简介 lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的...lombok插件 安装 使用 lombok 是需要安装插件的,如果不安装,IDE 则无法解析 lombok 注解。 idea  ?...,在最后面插入以下两行并保存:  -Xbootclasspath/a:lombok.jar  -javaagent:lombok.jar  3.重启 eclipse / myeclipse 常用注解...:注解在类上;为类提供一个无参的构造方法 @AllArgsConstructor :注解在类上;为类提供一个全参的构造方法 @Cleanup : 可以关闭流 @Builder : 被注解的类加个构造者模式...参考文档 官方文档: https://projectlombok.org/features/all lombok注解介绍 http://blog.csdn.net/sunsfan/article/details

    62510

    Lombok常用注解和功能

    转载自 https://blog.csdn.net/qq_40081976/article/details/79139565 注解 val:用在局部变量前面,相当于将变量声明为final @NonNull...:给方法参数增加这个注解会自动在方法内对该参数进行是否为空的校验,如果为空,则抛出NPE(NullPointerException) @Cleanup:自动管理资源,用在局部变量之前,在当前变量范围内即将执行完毕退出之前会自动清理资源...自动生成无参构造和使用所有参数的构造函数以及把所有@NonNull属性作为参数的构造函数,如果指定staticName = “of”参数,同时还会生成一个返回类对象的静态工厂方法,比使用构造函数方便很多 @Data:注解在类上...,相当于同时使用了@ToString、@EqualsAndHashCode、@Getter、@Setter和@RequiredArgsConstrutor这些注解,对于POJO类十分有用 @Value:...就是你不能阻止非受控代码去锁this或者类对象,这可能会导致竞争条件或者其它线程错误 @Getter(lazy=true):可以替代经典的Double Check Lock样板代码 @Log:根据不同的注解生成不同类型的

    83220

    Lombok @Builder注解与继承

    Lombok 的 @Builder注解可以方便的支持 Builder 模式,但是在继承场景下,会出现 Lombok @Builder注解不会为继承的字段生成代码的问题。...即使给父类Parent也添加@Builder注解,依然无法调用。...自己实现 Builder 模式 使用 Lombok @Builder注解 可以很方便的使用构造模式, 我们也可以自己实现 Builder 模式,这将有助于我们理解 Builder 模式在继承场景下问题的本质...我尝试着做了翻译: 我曾经写过有关 Lombok _@Builder _注解的文章。不久前,我们开始在项目中使用到了它。...但在此期间,有一件事情困扰着我: Lombok _@Builder _注解不会为继承的字段生成代码。事实证明,这个问题有一个解决方案。

    18.6K20

    lombok注解不起作用

    一.问题原因   使用注解但是并没有生成相应功能,如@Data注解并没有生成对应的set和get方法 二.怎么解决  1. 一般新版idea会自动安装lombok插件,不确定的话可去插件中查看 2....如果你是创建spring项目时勾选的lombok,那么该依赖会给你添加一个小插件在pom.xml中,你需要去删除对应插件,如下图  将对应插件注释掉或者删除,然后刷新maven 建议:创建Springboot...工程时可以不勾选Lombok,你可以自己去手动绑定依赖,这样问题就不会出现了 3....如果还是不可以,可能碰到与作者类似情况,那你需要打开设置,找到注解处理器,直接选择为从项目类路径获取处理器和存储相对于下列位置生成的源中的模块内容根  确定应用完成之后,记得去maven中点击compile

    85210

    lombok在IntelliJ IDEA下的使用

    lombok是一款可以精减java代码、提升开发人员生产效率的辅助工具,利用注解在编译期自动生成setter/getter/toString()/constructor之类的代码。...先来二段对比代码: 这是用lombok后的java代码: import lombok.*; import lombok.extern.slf4j.Slf4j; import java.io.ByteArrayInputStream...java.io.ByteArrayInputStream; import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import lombok.NonNull..., String country) { this.name = name; this.country = country; } } 大概减少了2/3的代码,各种注解的详细用法...://projectlombok.org/features/index.html IDEA下使用时,可以通过插件的形式安装,插件下载地址:https://github.com/mplushnikov/lombok-intellij-plugin

    99690

    Lombok 的作者,成功讨伐 IntelliJ IDEA!

    再点击链接进去看: “https://youtrack.jetbrains.com/issue/IDEA-248146 我看了下,是 Lombok 插件原作者两周前发的请求支持的贴子,关于 IntelliJ...IDEA 2020.2 不兼容他的插件的问题,想寻求 IntelliJ IDEA 开发者的支持。...Matthias Kurz: “+1,请让 IntelliJ 原生对 Lombok 的支持。...Peter GromovL: 这个应该是 IntelliJ 开发者,他 @ Lombok 原作者说: “那是因为有一些来自 Lombok 插件的类的无效成员变量,很有可能是这些成员变量被缓存到某个地方,...还有很多评论的呼声是要官方原生支持 Lombok,IntelliJ 开发者被讨伐,有兴趣可以进那个链接看下,不过这个问题最终还是解决了: ? 既然如此,为什么还是提示说不兼容 Lombok 呢?

    1.1K30

    Lombok @Builder注解踩坑记录

    Lombok是一款Java开发中常用的工具库,它提供了许多注解,可以简化代码的编写。...其中,@Builder注解可以帮助我们快速生成Builder模式的代码,但在使用过程中,我们也需要注意一些细节,否则可能会出现一些问题。下面分享一些我在实际开发中遇到的问题,希望大家引以为戒。1....排查经过数据库新增字段中声明了NOT NULL,但代码在中赋了NULL值,导致插入失败;进一步排查所有给新增字段赋值的代码,发现了一处lombok注解:// 这里简化了业务类,只是为了说明情况import...原因在使用@Builder注解时,Lombok会为该类生成一个Builder类,该Builder类中会包含该类的所有字段,并且每个字段都有一个对应的set方法。...解决方案为了避免这样问题的出现,我们可以采取以下措施:在使用@Builder注解时,尽量不要为字段设置默认值,而是在Builder.build()方法中为所有字段都赋值。

    62500
    领券