Lombok【汇总】

news/2024/7/7 22:15:17

目录

    • 【官网】
    • 【使用篇】
      • 【注意事项】
      • 【Maven依赖】
      • 【SpringBoot】
      • 【常用注解】
      • 【推荐写法】
    • 【推荐好文】


【官网】

https://github.com/rzwitserloot/lombok


【使用篇】

【注意事项】

在使用Lombok时,你的编辑器可能会报错,这时请在你的IDE中安装Lombok插件(如果使用的Idea则直接搜索Lombok插件,选择星级最高的,直接安装就是,其他Ide雷同)

【Maven依赖】

在这里插入图片描述

<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.10</version>
    <scope>provided</scope>
</dependency>

【SpringBoot】

创建SpringBoot项目时可以直接勾选即可
在这里插入图片描述

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

【常用注解】

@Data注解:在JavaBean中使用,这个注解包含范围最广,它包含getter、setter注解,即当使用当前注解时,会自动生成包含的所有方法;

@builder注解:在JavaBean中使用,使用此注解可通过builder方式初始化对象

@getter注解:在JavaBean中使用,使用此注解会生成对应的getter方法;

@setter注解:在JavaBean中使用,使用此注解会生成对应的setter方法;

@NoArgsConstructor注解:在JJavaBean中使用,使用此注解会生成对应的无参构造方法;

@AllArgsConstructor注解:在JJavaBean中使用,使用此注解会生成对应的有参构造方法;

@ToString注解:在JJavaBean中使用,使用此注解会自动重写对应的toStirng方法;

@EqualsAndHashCode注解:在JavaBean中使用,使用此注解会自动重写对应的equals方法和hashCode方法;

@Slf4j:在需要打印日志的类中使用,当项目中使用了slf4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;

@Log4j:在需要打印日志的类中使用,当项目中使用了log4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;

lombok注解在java进行编译时进行代码的构建,对于java对象的创建工作它可以更优雅,不需要写多余的重复的代码,这对于JAVA开发人员是很重要的,在出现lombok之后,对象的创建工作更提供Builder方法,对属性的赋值采用Builder的方式,这种方式最优雅

【推荐写法】

@Data
@Builder(toBuilder = true)
@NoArgsConstructor
@AllArgsConstructor(access = AccessLevel.PRIVATE)
public class UserInfo {

	private String name;
	
	@Builder.Default
	private String email = "bgood@sina.com";

}

注:@Builder.Default 设置默认值,如果保错请升级lombok版本(低版本不支持)

@Builder注解赋值新对象

UserInfo userInfo = UserInfo.builder()
        .name("zzl")
        .email("bgood@sina.com")
        .build();

@Builder注解修改原对象的属性值,要求实体上添加@Builder(toBuilder=true)

 userInfo = userInfo.toBuilder()
        .name("OK")
        .email("zgood@sina.com")
        .build();

【推荐好文】

使用Lombok编写优雅的Bean对象

IDEA中用好Lombok,撸码效率至少提升5倍

手撸了一个 Lombok


http://www.niftyadmin.cn/n/2257463.html

相关文章

PDD商家如何提取热门关键词?

在拼多多平台新颖、独特的新型电商模式的吸引下&#xff0c;选择在拼多多开店的朋友越来越多了。面临不同于其他传统电商创业平台的特殊模式&#xff0c;难以借鉴其他平台运营思路&#xff0c;在拼多多开店的商家很容易陷入运营困境。今天成都榆熙小编就跟大家聊一聊拼多多新店…

全局异常处理总结

目录WEB.XMLSpring全局异常&#xff0c;Controller增强方式&#xff08; Advising Controllers&#xff09;Spirng全局异常&#xff0c;配置方式Sping全局异常&#xff0c;自定义异常类和异常解析Errors and REST推荐文章WEB.XML 就是指定error-code和page到指定地址&#xff…

成都榆熙电子商务有限公司:店铺违规后可以补救吗?

既然选择了在拼多多开店&#xff0c;那么商家们就要遵守平台的规则&#xff0c;但是有的商家因为自己的一些错误操作导致店铺受到处罚&#xff0c;那么商家们经常会遇到哪些违规情况呢&#xff1f;可以补救吗&#xff1f;想要了解的小伙伴一起和榆熙电商小编来看看吧。 一、收…

Spring Security授权源码分析

授权是在用户认证通过后&#xff0c;对访问资源的权限进行检查的过程。 Spring Security使用标准 Filter建立了对 web请求的拦截&#xff0c;最终实现对资源的授权访问。 Spring Security过滤器链加载执行流程源码分析请查看&#xff1a;https://blog.csdn.net/qq_42402854/ar…

mysql迁移

目录 1.SQLyog 2.阿里云DTS 1.创建任务 2.配置源库及目标库信息 3.配置任务对象及高级配置 4.高级配置 1.SQLyog 适用于离线迁移&#xff0c;全量迁移&#xff0c;少量迁移&#xff0c;数据库大小在几百兆范围内&#xff0c;时间需要几十秒到几分钟不等。 选择源库&…

榆熙电商:PDD商家如何留住核心消费者?

一般来说&#xff0c;很多个人商家在拼多多开店之后对自己店铺的运营管理上都比较欠缺&#xff0c;对寻找目标用户以及用户定位管理等方面都很被动&#xff0c;等待流量自主上门往往会丧失店铺竞争力。作为拼多多商家&#xff0c;如何才能对目标用户有着清晰明确的认知呢&#…

Spring Security实现记住我功能源码分析

Spring Security 实现“记住我”功能&#xff0c;即自动登录功能有两种方式&#xff1a; 将 token写入到浏览器的 Cookie中将 token持久化到数据库 一、将 token写入到浏览器的 Cookie中 1、代码实现 1.1 后端 Spring Security默认是没有开启“记住我”功能&#xff0c;我们…

榆熙电商:为何购物旗舰店选择优于其他?

用户们在购买某个店铺的产品的时候&#xff0c;往往都是优先选择在旗舰店进行购买&#xff0c;那么该如何去分辨拼多多的旗舰店呢&#xff1f;旗舰店有哪些保障呢&#xff1f;一起和成都榆熙小编来了解一下吧。 一、用户如何识别官方旗舰店&#xff1f; 最简单的方法就是看店…