软件编程
位置:首页>> 软件编程>> java编程>> Spring Boot整合Lombok的方法详解

Spring Boot整合Lombok的方法详解

作者:寒咏哥  发布时间:2023-11-22 09:06:21 

标签:Spring,Boot,整合,Lombok

上篇文章给大家介绍了,喜欢的朋友点击查看下。

SpringBoot 开发提速神器 Lombok+MybatisPlus+SwaggerUI

Lombok为啥这么牛逼?SpringBoot和IDEA官方都要支持它

一、Lombok简介

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

二、整合Lombok

安装Lombok插件

1.直接从http://plugins.jetbrains.com/下载,然后放到idea安装文件下面的plugins,然后重启idea
2.在idea的settings(windows)或者Preferences(mac),下找到plugins菜单,点击Browse repositories,如图

Spring Boot整合Lombok的方法详解

在项目pom文件中加入lombok依赖


<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>

使用@Data注解测试

@Data等价于上面的@Setter@Getter@RequiredArgsConstructor@ToString@EqualsAndHashCode


package com.smartadmin.entity.common;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;

/**
* Page
*
* @Author: hanYong
* @CreateTime: 2020-11-25
*/
@Data
public class EsPage implements Serializable {

private static final long serialVersionUID = 8398867132297251568L;

/** 分页起点 */
   private Integer from;

/** 最多返回size条记录 */
   private Integer size;

/** 排序字段名 */
   private String field;

/** 排序方式 */
   private String order;

public static void main(String[] args) {
       EsPage esPage = new EsPage();
       esPage.setField("123");
       System.out.println(esPage.toString());
   }
}

Spring Boot整合Lombok的方法详解

三、Lombok注解简介


@Data 标签,生成getter/setter toString()等方法
@NonNull : 让你不在担忧并且爱上NullPointerException
@CleanUp : 自动资源管理:不用再在finally中添加资源的close方法
@Setter/@Getter : 自动生成set和get方法
@ToString : 自动生成toString方法
@EqualsAndHashcode : 从对象的字段中生成hashCode和equals的实现
@NoArgsConstructor/@RequiredArgsConstructor/@AllArgsConstructor
自动生成构造方法
@Data : 自动生成set/get方法,toString方法,equals方法,hashCode方法,不带参数的构造方法
@Value : 用于注解final类
@Builder : 产生复杂的构建器api类
@SneakyThrows : 异常处理(谨慎使用)
@Synchronized : 同步方法安全的转化
@Getter(lazy=true) :
@Log : 支持各种logger对象,使用时用对应的注解,如:@Log4j

其它注解参考:https://projectlombok.org/tidelift

来源:https://blog.csdn.net/han12398766/article/details/116245583

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com