Lombok讲解

Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,如:getter、setter、equals、hashCode、toString等。

Lombok的常用注解有:

  1. @Data:这是一个自定义注解,它相当于@Getter、@Setter、@EqualsAndHashCode、@ToString四个注解的组合。
  2. @Getter:用于在类中的每个实例变量上自动生成getter方法。
  3. @Setter:用于在类中的每个实例变量上自动生成setter方法。
  4. @NoArgsConstructor:自动生成无参构造方法。
  5. @AllArgsConstructor:自动生成全参构造方法。
  6. @ToString:自动生成toString方法。
  7. @EqualsAndHashCode:自动生成equals和hashCode方法。
  8. @Slf4j:自动生成日志框架Slf4j的Logger。
  9. @Log4j:自动生成日志框架Log4j的Logger。
  10. @Builder:自动生成Builder模式的方法。
  11. @Getter和@Setter也可以在类或类方法的级别上单独使用,分别用于生成该类所有实例变量的getter/setter方法。

请注意,使用Lombok后,可以通过简单的注解形式来消除一些必须有但显得很臃肿的Java代码,但也会对Java编译器的一些检查产生影响,有些错误在编译时可能无法发现,需要在运行时才能发现,因此使用时要注意测试和验证。

依赖:

html 复制代码
<dependency>
     <groupId>org.projectlombok</groupId>
     <artifactId>lombok</artifactId>
     <version>1.18.16</version>
</dependency>

示例:

java 复制代码
@Data
public class User {
    private Integer id;
    private String username;
    private String password;
}
相关推荐
砍材农夫1 小时前
spring-ai 第四多模态API
java·人工智能·spring
她说..4 小时前
Java 对象相关高频面试题
java·开发语言·spring·java-ee
花酒锄作田4 小时前
Postgres - Listen/Notify构建轻量级发布订阅系统
python·postgresql
watson_pillow4 小时前
c++ 协程的初步理解
开发语言·c++
庞轩px4 小时前
深入理解 sleep() 与 wait():从基础到监视器队列
java·开发语言·线程··wait·sleep·监视器
Thomas.Sir4 小时前
第二章:LlamaIndex 的基本概念
人工智能·python·ai·llama·llamaindex
故事和你914 小时前
洛谷-算法1-2-排序2
开发语言·数据结构·c++·算法·动态规划·图论
m0_694845575 小时前
Dify部署教程:从AI原型到生产系统的一站式方案
服务器·人工智能·python·数据分析·开源
皮皮林5515 小时前
面试官:ZSet 的底层实现是什么?
java
码云数智-大飞5 小时前
C++ RAII机制:资源管理的“自动化”哲学
java·服务器·php