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;
}
相关推荐
小刘在重生~25 分钟前
Java 常用类|包装类 装箱拆箱、Integer 缓存面试题
java·python·缓存
Orange_sparkle29 分钟前
Pi Agent vs LangGraph:从人机交互、企业 RAG 到持久化工作流的完整选型指南
java·网络·人机交互
2601_9620994644 分钟前
Python xlwt设置excel单元格字体及格式
python·excel·xlwt·样式设置·单元格格式
菜鸟~noob2331 小时前
【电子战】 第01篇:噪声、门限与虚警/检测概率(PFA/PD)【含matlab代码】
开发语言·matlab
奇牙coding1231 小时前
GPT-6-Astra API 接入教程:OpenRouter 路由配置 + Python/curl 示例 + 静默降级踩坑
开发语言·python·gpt·ai
2601_962298272 小时前
Python与Selenium结合的Web自动化测试全流程实践教程
自动化测试·python·selenium·web测试·pageobjectmodel
lzx_0022 小时前
C++11(一)
开发语言·c++·算法
天衍四九-2 小时前
第一章:从 LLM 到 Agent —— DeepSeek Harness 入门
网络·数据库·人工智能·python
529宝宝起名网2 小时前
用 Python 实现名字寓意评分算法:基于 NLP 语义分析的名字内涵深度评估
python·算法·自然语言处理
2601_962298672 小时前
Python:对象缓存优化机制(CPython)
python·性能优化·内存优化·cpython·对象缓存