lombok插件安装(eclipse安装lombok插件教程)

简介Lombok是一种Java实用工具,可用来帮助开发人员消除Java的代码冗余,尤其是对于简单的Java对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现Lombok,开发人员可以节省构建诸如hashCode()和equals(

简介

Lombok是一种Java实用工具,可用来帮助开发人员消除Java的代码冗余,尤其是对于简单的Java对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现 Lombok,开发人员可以节省构建诸如 hashCode() 和 equals() 这样的方法以及以往用来分类各种 accessor 和 mutator 的大量时间。

安装

  • 由于Lombok采用注解的形式,在编译后自动生成相应的方法,所以需要下载插件来支持它。
  • 以IDEA为例:查找插件lombok plugin安装即可。

Lombok插件安装示例

引入依赖

使用前需要在pom.xml文件中引入Lombok的依赖包:

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>

注解大全

注解目录

常用注解介绍

  • @Getter和@Setter:该注解可以使用在类上也可以使用在属性上,生成的getter遵循布尔属性的约定。在使用该注解时,会默认生成一个无参构造和对应的get、set方法。

示例代码如下:

@Getter
@Setter
public class User implements Serializable {
private static final long serialVersionUID = -7916580688752749714L;
private Long id;
private String userName;
private Boolean isDeleted;
}

  • @ToString :该注解使用在类上,编译后toString方法返回将会以字段的名称-值的形式输出。
  • @EqualsAndHashCode :该注解使用在类上,同时生成 equals 和 hashCode。
  • @AllArgsConstructor :该注解使用在类上,提供全参数的构造方法,默认不提供无参构造。
  • @NoArgsConstructor :该注解使用在类上,提供无参构造。
  • @Data :使用该注解就相对于同时聚合了以下几个注解的功能(@ToString 、 @Getter 、@Setter、@EqualsAndHashCode 、 @NoArgsConstructor)。

需要注意的是:同时使用 @Data 和 @AllArgsConstructor 后 ,默认的无参构造函数失效,如果需要它,要重新设置 @NoArgsConstructor。

  • @Slf4j :在类上注解后,可直接调用log。

log.info(\"xxx\");
log.error(\"xxx\");
log.debug(\"xxx\");
log.trace(\"xxx\");
log.warn(\"xxx\");

  • @Builder:bulder 模式构建对象。
  • @Cleanup:自动化关闭流。

@Cleanup
InputStream in = new FileInputStream(args[0]);
@Cleanup
OutputStream out = new FileOutputStream(args[1]);

  • @NonNull :增加不为空判断。

public NonNullDemo(@NonNull User user) {
this.userName = user.getUserName();
}

  • @SneakyThrows :当我们需要抛出异常,在当前方法上调用,不用显示的在方法名后面写 throw。

@SneakyThrows(Exception.class)

  • @Synchronized :方法中所有的代码都加入到一个代码块中,默认静态方法使用的是全局锁,普通方法使用的是对象锁,当然也可以指定锁的对象。

private final Object lock = new Object();
@Synchronized(\"lock\")
public void doing() {
// todo:
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/17014.html

(0)
nan
上一篇 2021-08-24
下一篇 2021-08-24

相关推荐

  • android系统架构组成包括有哪些

    Android系统架构主要包括以下几个组件:Linux内核(Kernel):Android系统基于Linux内核构建,提供底层硬件驱动程序和系统资源管理功能。库(Libraries):包括一系列的C/C++库,提供了Android应用程序所需的功能,如图形渲染、数据库访问、网络通信等。Android运行环境(Android Runtime):包括Dalvik虚拟机(从Android 5.0开始逐渐

    2024-03-05
    0
  • 如何在python中安装pygame

    要在Python中安装Pygame,可以按照以下步骤进行操作:首先,确保已经安装了Python解释器。可以在终端窗口中输入python –version来检查Python版本。打开终端窗口,并输入以下命令来安装Pygame:pip install pygame如果使用的是Python 2.x 版本,则输入以下命令来安装Pygame:pip2 install pygame等待安装完成。安装过程可

    2024-01-16
    0
  • python集合取值的方法是什么

    Python中可以通过索引来取集合的值,集合是无序的,因此不支持通过索引来获取值。但是可以通过循环遍历集合来获取每一个元素的值。示例如下:my_set = {1, 2, 3, 4, 5}# 使用循环来遍历集合并获取值for value in my_set:print(value)如果要获取集合中的某个特定值,可以使用in关键字来判断该值是否在集合中,示例如下:my_set = {1, 2,

    2024-02-27
    0
  • 「一个域名能干什么」有个域名可以做什么

    一个域名能干什么,有个域名可以做什么 内容导航: 我有一个域名可以干什么 网站的域名和网站的功能有关系吗 如果我注册了一个域名我可以做些什么 博客域名升级是怎么回事 一、我有一个域…

    2022-08-11
    0
  • 平面艺术设计专业如何(平面设计专业和艺术设计专业的区别)

    平面艺术设计专业如何,平面设计专业和艺术设计专业的区别内容导航:平面艺术设计专业的未来前景如何台湾逢甲大学有平面艺术设计专业吗平面广告设计和环境艺术设计两个专业哪个好电脑艺术设计专业(平面方向)求职意向怎么写一、平面艺术设计

    2022-04-24
    0
  • 「什么是伪原创」什么是伪原创伪原创涉嫌侵权吗

    什么是伪原创,什么是伪原创伪原创涉嫌侵权吗 内容导航: 什么是伪原创怎么写出好的伪原创啊 伪原创到底是什么意思 究竟什么是伪原创。。 怎么做好伪原创呢 一、什么是伪原创怎么写出好的…

    2022-08-12
    0

发表回复

登录后才能评论