在idea2023中使用SpringBoot整合Lombok全过程及详细用法

 更新时间:2023年09月19日 09:21:18   作者:DaenCode  
Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能,本文详细给大家介绍了在idea2023中使用SpringBoot整合Lombok全过程及详细用法,需要的朋友可以参考下

Lombok介绍

以下解释来源于百度百科

Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能。不需要再写getter、setter或equals方法,只要有一个注解,就有一个功能齐全的构建器、自动记录变量等等。

目的:为了提升开发效率,减少重复代码的执行。

引入依赖

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

常用注解及用法

注解作用于说明
@Getter字段自动生成字段的getter方法
@Setter字段自动生成字段的setter方法
@ToString自动生成toString()方法
@EqualsAndHashCode自动生成equals()hashCode()方法
@NoArgsConstructor自动生成无参构造函数
@AllArgsConstructor自动生成全参构造函数
@Data包含了@ToString@EqualsAndHashCode@Getter@Setter的功能
@Builder类或者方法自动生成建造者模式的代码
@Slf4j类或者字段自动生成private static final org.slf4j.Logger 字段,用于日志记录
@RequiredArgsConstructor生成包含必需参数的构造函数

IDEA中的配置

1.下载插件。File-》Settings-》Plugins-》Marketplace。我这里是安装好了。

2.注解处理器开启。

用法举例

@Getter、@Setter

使用了 @Getter 和 @Setter 注解,通过这两个注解,Lombok 会自动生成 getName() 和 setName() 方法以及 getAge() 和 setAge() 方法。

import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Person {
    private String name;
    private int age;
}

@ToString

使用 @ToString 注解后,Lombok 会自动生成 toString() 方法。该方法将输出对象的类名以及对象的所有字段和它们的值。

import lombok.ToString;
@ToString
public class Person {
    private String name;
    private int age;
}

@EqualsAndHashCode

使用 @EqualsAndHashCode 注解后,Lombok 会自动生成 equals() 和 hashCode() 方法。这些方法根据对象的字段生成相应的 equals 和 hashCode 实现。

import lombok.EqualsAndHashCode;
@EqualsAndHashCode
public class Person {
    private String name;
    private int age;
}

@NoArgsConstructor

Lombok 会自动生成无参构造函数。

import lombok.NoArgsConstructor;
@NoArgsConstructor
public class Person {
    private String name;
    private int age;
}

AllArgsConstructor

Lombok 会自动生成包含所有字段的全参构造函数

import lombok.AllArgsConstructor;
@AllArgsConstructor
public class Person {
    private String name;
    private int age;
}

@Data

Lombok 会自动生成 @ToString、@EqualsAndHashCode、@Getter 和 @Setter 的功能

import lombok.Data;
@Data
public class Person {
    private String name;
    private int age;
}

@Builder

Lombok 会自动生成建造者模式的代码。Person.builder().name(“John”).age(25).build() 来创建 Person 对象。

import lombok.Builder;
@Builder
public class Person {
    private String name;
    private int age;
}

@Slf4j

Lombok 会自动生成一个名为 log 的 private static final org.slf4j.Logger 字段,用于日志记录。

import lombok.extern.slf4j.Slf4j;
@Slf4j
public class Example {
    public void someMethod() {
        log.info("Log message");
        log.warn("Warning message");
        log.error("Error message");
        log.debug("Debug message");
    }
}

@RequiredArgsConstructor

Lombok 会自动生成一个构造函数,该构造函数仅包含被 final 修饰的字段。

import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
public class Person {
    private final String name;
    private final int age;
    private String address;
}

写在最后

有关于IDEA2023中使用SpringBoot整合Lombok全过程及详细用法到此就结束了。感谢大家的阅读,希望大家在评论区对此部分内容散发讨论,便于学到更多的知识。

以上就是在idea2023中使用SpringBoot整合Lombok全过程及详细用法的详细内容,更多关于idea2023 SpringBoot整合Lombok的资料请关注脚本之家其它相关文章!

相关文章

  • Mybatis-plus批量插入的2种方式总结

    Mybatis-plus批量插入的2种方式总结

    这篇文章主要给大家总结介绍了关于Mybatis-plus批量插入的2种方式,Mybatis-Plus提供了多种方式进行批量插入优化,文中通过代码示例将实现的方法介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • MyBatisPlus+Lombok实现分页功能的方法详解

    MyBatisPlus+Lombok实现分页功能的方法详解

    Lombok是一个Java类库,提供了一组注解,简化POJO实体类开发。本文将为大家介绍一下Lombok的使用以及如何利用MyBatisPlus+Lombok实现分页功能,感兴趣的可以动手尝试一下
    2022-07-07
  • SpringBoot如何访问html和js等静态资源配置

    SpringBoot如何访问html和js等静态资源配置

    这篇文章主要介绍了SpringBoot如何访问html和js等静态资源配置,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Java策略模式实现简单购物车功能

    Java策略模式实现简单购物车功能

    这篇文章主要介绍了Java策略模式实现简单地购物车,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • mybatis注解如何实现对象批量更改

    mybatis注解如何实现对象批量更改

    这篇文章主要介绍了mybatis注解实现对象批量更改的方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 在已经使用mybatis的项目里引入mybatis-plus,结果不能共存的解决

    在已经使用mybatis的项目里引入mybatis-plus,结果不能共存的解决

    这篇文章主要介绍了在已经使用mybatis的项目里引入mybatis-plus,结果不能共存的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Vscode中不再支持JDK8的原因分析及解决方案

    Vscode中不再支持JDK8的原因分析及解决方案

    这篇文章主要介绍了Vscode中不再支持JDK8的解决方案,本文给大家分享三种解决方案,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Springboot实现邮箱验证码注册与修改密码及登录功能详解流程

    Springboot实现邮箱验证码注册与修改密码及登录功能详解流程

    验证码作为一种自然人的机器人的判别工具,被广泛的用于各种防止程序做自动化的场景中。传统的字符型验证安全性已经名存实亡的情况下,各种新型的验证码如雨后春笋般涌现,今天给大家分享一篇SpringBoot实现滑块验证码
    2022-11-11
  • spring boot中的条件装配bean的实现

    spring boot中的条件装配bean的实现

    这篇文章主要介绍了spring boot中的条件装配bean的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 使用位运算、值交换等方式反转java字符串的多种方法(四种方法)

    使用位运算、值交换等方式反转java字符串的多种方法(四种方法)

    这篇文章主要介绍了使用位运算、值交换等方式反转java字符串,本文通过四种方式给大家讲解,给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07

最新评论