idea安装lombok插件及基本注解使用详解

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 平时在开发过程中创建实体类的时候就经常的操作是:先写成员变量,然后再提供getXxx()、setXxx()方法,然后看需要再提供toString等方法。这样一来不仅会发现每写一个实体类的话就会有很多相同的操作,而且代码量看起来也很多,很长,不简洁。于是,@Data这个注解就能给我们开发过程中带来很方便的使用了。 @Data注解:这个注解其实是帮你的类提供了getXxx()、setXxx()方法、equals()、hashCode()、toString() 这些方法。也就是说只要你的类上写了这个注解,那就不需要再生成get、set、toString等方法了。        lombok就

平时在开发过程中创建实体类的时候就经常的操作是:先写成员变量,然后再提供getXxx()、setXxx()方法,然后看需要再提供toString等方法。这样一来不仅会发现每写一个实体类的话就会有很多相同的操作,而且代码量看起来也很多,很长,不简洁。于是,@Data这个注解就能给我们开发过程中带来很方便的使用了。

 

@Data注解:这个注解其实是帮你的类提供了getXxx()、setXxx()方法、equals()、hashCode()、toString() 这些方法。也就是说只要你的类上写了这个注解,那就不需要再生成get、set、toString等方法了。

       lombok就很好的提供了这些便捷方法;lombok插件是一个可以通过简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,例如:比如通常情况下我们需要手动去建立getter和setter方法,构造函数之类的,而lombok的作用就是能够在我们编译源码的时候自动帮我们生成这些方法了。


下面就教大家怎么安装lombok插件:

一:Lombok  idea安装

idea中添加lombok插件,首先点开File下的Settings,然后点Plugins,然后点击下面的Browse repositories,然后在搜索框内搜索lombok,然后有个install按钮进行安装,安装完后重启IDEA。


20.jpg


二:添加lombok的maven的pom.xml依赖:

<dependencies>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.6</version>
    </dependency>
</dependencies>


三:注解介绍

  下面只是介绍了几个常用的注解,更多的请参见projectlombok.org/features/al…

@Getter / @Setter

  可以作用在类上和属性上,放在类上,会对所有的非静态(non-static)属性生成Getter/Setter方法,放在属性上,会对该属性生成Getter/Setter方法。并可以指定Getter/Setter方法的访问级别。

@EqualsAndHashCode

  默认情况下,会使用所有非瞬态(non-transient)和非静态(non-static)字段来生成equals和hascode方法,也可以指定具体使用哪些属性。

@ToString

  生成toString方法,默认情况下,会输出类名、所有属性,属性会按照顺序输出,以逗号分割。

@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor

  无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。

@Data

  @ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@RequiredArgsConstructor的组合,通常情况下,我们使用这个注解就足够了。


Lombok原理

  了解了简单的使用之后,现在应该比较好奇它是如何实现的。整个使用的过程中,只需要使用注解而已,不需要做其它额外的工作,那玄妙之处应该是在注解的解析上。JDK5引入了注解的同时,也提供了两种解析方式。


运行时解析

  运行时能够解析的注解,必须将@Retention设置为RUNTIME,这样可以通过反射拿到该注解。java.lang.reflect反射包中提供了一个接口AnnotatedElement,该接口定义了获取注解信息的几个方法,Class、Constructor、Field、Method、Package等都实现了该接口,大部分开发者应该都很熟悉这种解析方式。


boolean isAnnotationPresent(Class<? extends Annotation> annotationClass);

<T extends Annotation> T getAnnotation(Class<T> annotationClass);

Annotation[] getAnnotations();

Annotation[] getDeclaredAnnotations();

Lombok问题

无法支持多种参数构造器的重载;

 



目录
相关文章
|
29天前
|
网络协议 Windows
两步带你解决IDEA 插件下载安装慢、超时、不成功问题
这篇文章提供了解决IDEA插件下载慢或超时问题的方案,通过查找国内插件节点IP地址并修改本地hosts文件来加速下载。
两步带你解决IDEA 插件下载安装慢、超时、不成功问题
|
29天前
|
IDE Java 测试技术
IDEA安装并使用通义灵码
本文介绍了“通义灵码”这一智能编码助手的功能特点,并提供了在IDEA中安装和使用的详细步骤,旨在帮助提升编程效率和代码质量。
IDEA安装并使用通义灵码
|
18天前
|
IDE Java 程序员
学生邮箱白嫖/免费安装JetBrains全家桶(IDEA/pycharm等) —— 保姆级教程
本文提供了如何使用学生邮箱免费获取并安装JetBrains全家桶(包括IDEA、PyCharm等)的详细教程,涵盖了学生认证、软件下载、安装及常见问题的解决方法。
167 0
学生邮箱白嫖/免费安装JetBrains全家桶(IDEA/pycharm等) —— 保姆级教程
|
1月前
|
Java
可直接编辑jar包的IDEA插件-JarEditor
IDEA自带的反编译插件虽可查看jar包中的class文件,但无法直接编辑。为解决此问题,作者开发了JarEditor插件,可在IDEA中直接编辑jar文件内的class及资源文件,无需解压或手动编译。点击Jar Editor可修改代码,通过Save/Compile保存并编译,Build Jar则将更改写回jar包。该插件简化了jar包编辑流程,提高了开发效率。
137 4
可直接编辑jar包的IDEA插件-JarEditor
|
18天前
|
应用服务中间件 Windows
震惊!idea 2021 社区版手把手安装,超详细过程,新手一看就会 如何安装低版本的IDEA? IDEA安装过程中版本冲突怎么办 idea最新版安装!
本文提供了一个详细的指南,用于安装2021年社区版的IntelliJ IDEA,包括如何处理版本冲突和完成安装过程。
67 2
震惊!idea 2021 社区版手把手安装,超详细过程,新手一看就会 如何安装低版本的IDEA? IDEA安装过程中版本冲突怎么办 idea最新版安装!
|
26天前
|
Windows
IDEA如何查看已经安装的插件并删除
【10月更文挑战第1天】这段内容主要介绍了如何在IntelliJ IDEA中查看和删除已安装的插件。可以通过软件内的插件市场查看插件列表,包括插件名称、版本号和供应商等信息;也可以通过访问插件目录查看。删除插件则建议在插件市场中进行,包括禁用和卸载步骤,手动删除插件文件夹的方法不推荐,因为可能存在配置残留等问题。
265 11
|
18天前
|
人工智能 Java 数据库连接
IDEA开发 常用代码规范插件 常用辅助类插件
IDEA开发 常用代码规范插件 常用辅助类插件
21 0
|
11天前
|
IDE Java Maven
分享几个实用的IDEA插件,提高你的工作效率!
分享几个实用的IDEA插件,提高你的工作效率!
|
18天前
|
Oracle IDE Java
IDEA安装教程配置java环境(超详细)
IDEA安装教程配置java环境(超详细)
|
11月前
|
IDE Java Maven
Idea安装及项目设置配置和基本使用
Idea安装及项目设置配置和基本使用
271 0
Idea安装及项目设置配置和基本使用