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,如图
在项目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());
}
}
三、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


猜你喜欢
- Web基础和HTTP协议┌─────────┐┌─────────┐
- 本文实例分析了Java中的传值调用。分享给大家供大家参考。具体分析如下:Java以引用的方式操作对象实例可以确认的是Java中操作对象的方式
- mybatis-plus的代码生成器会在实体类中生成数据库所有字段,我们去用mapper接口查询时,会返回数据库所有的字段。但有些字段不是我
- Android中SQLite 使用方法详解现在的主流移动设备像android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们
- 这篇文章主要介绍了SpringBoot集成MybatisPlus报错的解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定
- 理解枚举类型枚举类型是Java 5中新增特性的一部分,它是一种特殊的数据类型,之所以特殊是因为它既是一种类(class)类型却又比类类型多了
- 1. 对象的创建对象创建的主要流程:1.类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引
- 本文实例为大家分享了java实现学生成绩管理系统的具体代码,供大家参考,具体内容如下/* *@copyright by LzyRa
- 分组类控件主要包括容器控件(Panel),分组框控件(groupBox)和选项卡控件(TabControl)等控件。一、Panel控件Pan
- 目录环境准备1.数据库操作1.1获取所有数据库1.2获取指定库的所有集合名1.3.删除数据库2.文档操作2.1插入文档2.2查询文档2.3分
- 本文实例讲述了c#图像截取的实现方法。分享给大家供大家参考。具体如下:图像截取的相关代码如下: public Form1()&nb
- 自动生成的代码报错解决办法:把自动xml文件中自动生成的二级缓存注释掉来源:https://blog.csdn.net/weixin_447
- 前言在项目开发中,日志系统是必不可少的,用AOP在Web的请求做入参和出参的参数打印,同时对异常进行日志打印,避免重复的手写日志,完整案例见
- 背景:当我们有需求将HashMap转为Json格式的String时,切记不要使用HashMap的toString()方法,需要使用FastJ
- eclipse 创建 user library 方法1、Window - Preferences - Java - Build Path -
- 背景最近让我做一个大数据的系统,分析了一下,麻烦的地方就是多数据源切换抽取数据。考虑到可以跨服务器跨数据库抽数,再整理数据,就配置了这个动态
- FileOutPutStream:子类,写出数据的通道步骤:1.获取目标文件2.创建通道(如果原来没有目标文件,则会自动创建一个)3.写入数
- 本文实例为大家分享了springboot实现多服务器session共享的具体代码,供大家参考,具体内容如下环境:springboot:2.0
- 0.写在前面2020-5-18更新这个东西已经是两年前的了,现在问我具体细节我也不是很清楚了,而且现在review两年前的代码感觉写的好烂。
- using System;using System.Collections.Generic;using System.IO;using Sy