Lombok 注解用于减少Java样板代码,核心包括:@Data(生成getter/setter/toString/equals/hashCode/有参构造)、@Builder(链式构建)、@ToString与@EqualsAndHashCode(调试比较)、@NonNull(空值校验)等。

Lombok 的注解主要用来减少 Java 中重复、机械的样板代码,尤其适合 POJO、DTO、Entity 等类。常用和实用的注解可以按功能分几类,挑重点说清楚就行。
加在类上,一次性生成:
• 所有字段的 @Getter 和 @Setter
• @ToString(打印所有非静态字段)
• @EqualsAndHashCode(基于字段生成 equals + hashCode)
• @RequiredArgsConstructor(为 final 或 @NonNull 字段生成构造方法)
注意:它不会生成无参构造器,如果需要,得额外加 @NoArgsConstructor。
可作用于类或单个字段:
• 类上:为所有非 static 字段生成 getter/setter
• 字段上:只为该字段生成对应方法
• 支持访问级别控制,比如 @Setter(AccessLevel.PROTECTED)
• 可用 @AccessLevel.NONE 显式禁用某个字段的 getter 或 setter
这两个常配合使用:
• @ToString 默认输出全部字段,可用 @ToString.Exclude 排除敏感或大对象字段
• @EqualsAndHashCode 默认只基于本类字段,设 callSuper = true 可包含父类字段
• 两者都支持 exclude = {"field1", "field2"} 精确排除
加在类上,自动生成 Builder 内部类和 builder() 静态方法:
• 调用方式如 User.builder().name("Tom").age(25).build()
• 支持默认值(用 @Builder.Default)、必填校验(结合 @NonNull)
• 比手写 Builder 简洁,比 new + set 更安全、更易读
• @NoArgsConstructor / @AllArgsConstructor / @RequiredArgsConstructor:按需生成构造器
• @Value:类似 @Data,但把类和字段全设为 final,适合不可变对象
• @SneakyThrows:自动处理受检异常,不用写 throws 或 try-catch
• @Log4j / @Slf4j:注入日志对象 log,开箱即用
• @NonNull:在生成的构造器/方法中自动插入空检查(抛 NullPointerException)
基本上就这些——用好 @Data、@Builder、@ToString 和 @NonNull,日常开发已经覆盖八成场景。不复杂但容易忽略的是:IDE 要装 Lombok 插件,Maven/Gradle 得加依赖,否则编译会报错。
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录。有需要的朋友可以下载看看
1
以上就是java中Lombok有哪些注解的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号