详解Idea 2019.2 安装lombok插件失效问题解决

 更新时间:2019年10月08日 10:18:16   作者:蓝月流星  
这篇文章主要介绍了详解Idea 2019.2 安装lombok插件失效问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、lombok简介

lombok 提供了使用注解的形式帮助简化消除java代码。在编写Java代码时,通过使用对应的注解,可以简化开发,同时,在编译源码的时候,lombok又自动生成对应的代码。所以,使用lombok插件不会影响程序的运行效率。

二、lombok常用注解

@Data :注解在类上;包含了@ToString,@EqualsAndHashCode,@Getter / @Setter和@RequiredArgsConstructor的功能,提供类所有属性的 getter 和 setter 方法,此外还提供了equals、canEqual、hashCode、toString 方法。

@Setter:注解在属性上;为属性提供 setter 方法。

@Getter:注解在属性上;为属性提供 getter 方法。

默认生成的方法是public的,如果要修改方法修饰符可以设置AccessLevel的值,例如:@Getter(access = AccessLevel.PROTECTED)。

@ToString:注解在类上;生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。可以这样设置不包含哪些字段@ToString(exclude = "id") / @ToString(exclude = {"id","name"})。

如果继承的有父类的话,可以设置callSuper 让其调用父类的toString()方法,例如:@ToString(callSuper = true)。

@EqualsAndHashCode:注解在类上;生成hashCode()和equals()方法,默认情况下,它将使用所有非静态,非transient字段。但可以通过在可选的exclude参数中来排除更多字段。或者,通过在parameter参数中命名它们来准确指定希望使用哪些字段。

@NonNull: 注解在属性上;标识属性是不能为空,为空则抛出异常。

@Slf4j :注解在类上;根据用户实际使用的日志框架生成log日志对象。

@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象

@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法。当类中有final字段没有被初始化时,编译器会报错,此时可用@NoArgsConstructor(force = true),然后就会为没有初始化的final字段设置默认值 0 / false / null。对于具有约束的字段(例如@NonNull字段),不会生成检查或分配,因此请注意,正确初始化这些字段之前,这些约束无效。

@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法。

@RequiredArgsConstructor:注解在类上;会生成构造方法(可能带参数也可能不带参数),如果带参数,这参数只能是以final修饰的未经初始化的字段,或者是以@NonNull注解的未经初始化的字段@RequiredArgsConstructor(staticName = "of")会生成一个of()的静态方法,并把构造方法设置为私有的。

二、安装和配置lombok

1、引入依赖包

(1)maven引入依赖:

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

(2)gradle引入依赖:

compile group: 'org.projectlombok', name: 'lombok', version: '1.16.18'

(3)将lombok.jar直接放到源码文件夹下。

2、安装插件

(1)按键 Alt+Ctrl+S,打开Settings对话框,安装lombok插件。

3、设置Enable annotation processing

idea升级到最新的2019.2版本后,不必向网上很多人说的那样解决不兼容问题,如上配置即可正常使用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • ThreadLocal线程在Java框架中的应用及原理深入理解

    ThreadLocal线程在Java框架中的应用及原理深入理解

    这篇文章主要介绍了ThreadLocal在Java框架中的应用及原理深入理解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • JAVA中HTTP基本认证(Basic Authentication)实现

    JAVA中HTTP基本认证(Basic Authentication)实现

    HTTP 基本认证是一种简单的认证方法,本文主要介绍了JAVA中HTTP基本认证(Basic Authentication),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • Spring Security实现基于RBAC的权限表达式动态访问控制的操作方法

    Spring Security实现基于RBAC的权限表达式动态访问控制的操作方法

    这篇文章主要介绍了Spring Security实现基于RBAC的权限表达式动态访问控制,资源权限表达式动态权限控制在Spring Security也是可以实现的,首先开启方法级别的注解安全控制,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java图像处理之获取用户感兴趣的区域

    Java图像处理之获取用户感兴趣的区域

    OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法。本文将利用OpenCV实现获取用户感兴趣的区域,从而达到抠图效果
    2022-07-07
  • java编程之AC自动机工作原理与实现代码

    java编程之AC自动机工作原理与实现代码

    这篇文章主要介绍了java编程之AC自动机的有关内容,涉及其应用场景,运行原理,运行过程,构造方法及Java中的实现代码,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • java 中ThreadPoolExecutor原理分析

    java 中ThreadPoolExecutor原理分析

    这篇文章主要介绍了java 中ThreadPoolExecutor原理分析的相关资料,需要的朋友可以参考下
    2017-03-03
  • 详细解读Java Spring AOP

    详细解读Java Spring AOP

    这篇文章主要介绍了Java Spring框架中AOP的工作原理,AOP面向切面编程其实也可以被看作是一个设计模式去规范项目的结构。需要的朋友可以收藏下,方便下次浏览观看
    2021-12-12
  • SpringBoot使用CXF集成WebService的方法

    SpringBoot使用CXF集成WebService的方法

    这篇文章主要介绍了SpringBoot使用CXF集成WebService的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • SpringBoot中@ConditionalOnBean实现原理解读

    SpringBoot中@ConditionalOnBean实现原理解读

    这篇文章主要介绍了SpringBoot中@ConditionalOnBean实现原理,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代码详解

    spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代码详解

    这篇文章主要介绍了spring boot-2.1.16整合swagger-2.9.2 含yml配置文件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08

最新评论