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;
}
相关推荐
Littlehero_1213 小时前
QT自定义控件之热换站系统(源码开源)
开发语言·qt
meilindehuzi_a3 小时前
Python 基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
caimouse4 小时前
ReactOS 窗口系统分析(5):可见区域与窗口 DC — vis.c + windc.c
c语言·开发语言
Zane19944 小时前
调用了 async 函数却没执行?一文讲透协程、event loop 与 await
后端·python
OPEN-F4 小时前
Python进阶教程:装饰器与生成器深入
开发语言·python
Zane19944 小时前
HashMap 为什么要在长度16、容量必须是2的幂这些细节上较劲
java·后端
zhipujiaoyu4 小时前
2026年大数据专科何去何从?就业前景、发展趋势全揭秘!
大数据·python
长谷深风1114 小时前
为什么你的 Tool 总被模型选错?
java·大数据·ai·llm·ai agent·工具设计·agent设计
l1258654 小时前
# RAG噪声知识库治理:一致性与可信度的四层防线设计
数据库·人工智能·python·自然语言处理·langchain
zoujiahui_20184 小时前
别再只写 np.random.seed() 了:default_rng 与 np.random、random 到底差在哪?
python