SpringBoot (五) 集成 lombok简化代码
创始人
2025-05-31 13:28:09
0

文章目录

    • 前言
    • 1 配置
    • 2 常用注解
    • 2 Java代码案例

前言

哈喽,大家好,我是有勇气的牛排(全网同名)🐮🐮🐮

有问题的小伙伴欢迎在文末评论,点赞、收藏是对我最大的支持!!!。

官网:https://www.couragesteak.com/

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

lombok官网:https://projectlombok.org/features/

1 配置

Maven依赖 :

 org.springframework.bootspring-boot-starter-parent2.1.8.RELEASEorg.springframework.bootspring-boot-starter-weborg.projectlomboklombok

idea安装lombok插件 :

File–>Setting–>Plugins–>搜索“lombok plugin”,安装后重启ide

2 常用注解

@Data: 注解在类上,提供类所有属性的gettingsetting方法,它还提供了equalscanEqualhashCodetoString方法。
@Setter:注解在属性上,为属性提供 setting 方法。
@Getter: 注解在属性上,为属性提供 getting 方法。
@Log4j:注解在类上,为类提供一个名为log的log4j日志对象。
@NoArgsConstructor: 注解在类上,为类提供一个无参构造方法。
@AllArgsConstructor: 注解在类上,为类提供全参构造方法。
@NonNull: 注解在参数上,可以省略重复的 if(null == persion) 这类异常处理。
@Cleanup:注解在输入输出流等需要释放资源的变量上,不需要写额外繁琐而重复的释放资源代码。

2 Java代码案例

/** @Author  : 有勇气的牛排* @FileName: UserEntity.java* desc     :* */package com.couragesteak.test;import lombok.Data;
import lombok.extern.slf4j.Slf4j;@Data
@Slf4j
public class UserEntity {private Integer id;private String userName;private Integer age;public UserEntity() {}public UserEntity(Integer id, String userName, Integer age) {this.id = id;this.userName = userName;this.age = age;}@Overridepublic String toString() {return "UserEntity{" +"id=" + id +", userName='" + userName + '\'' +", age=" + age +'}';}public static void main(String[] args) {log.info("========cs=======");UserEntity userEntity = new UserEntity(1,"有勇气的牛排",20);System.out.println(userEntity.toString());System.out.println(userEntity.getUserName());}
}

image.png

如果不适用lombok打印日志

private Logger log = Logger.getLogger(UserEntity.class);

参考地址:
[1] 余胜军
[2] https://developer.aliyun.com/article/319220

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...