backend\src\main\resources\lombok.config
是一个配置文件,用于自定义 Lombok 库的行为。Lombok 是一个 Java 库,可以通过注解减少样板代码的编写,例如自动生成构造函数、getter 和 setter 方法等。
文件路径
backend\src\main\resources\lombok.config
文件内容
以下是一个典型的 lombok.config
文件的示例:
config.stopBubbling = false
lombok.accessors.chain = true
lombok.anyConstructor.suppressConstructorProperties = true
lombok.log.fieldName = log
lombok.getter.lazy = false
lombok.nonnull.flagUsage = warn
lombok.var.flagUsage = warn
解释
1. 配置选项
-
config.stopBubbling = false
:- 默认情况下,Lombok 配置文件会向上冒泡查找父目录中的配置文件。设置为
false
表示不阻止这种行为。
- 默认情况下,Lombok 配置文件会向上冒泡查找父目录中的配置文件。设置为
-
lombok.accessors.chain = true
:- 启用链式调用。例如,生成的 setter 方法将返回
this
,允许链式调用。
- 启用链式调用。例如,生成的 setter 方法将返回
-
lombok.anyConstructor.suppressConstructorProperties = true
:- 禁止在生成的构造函数上添加
@ConstructorProperties
注解。
- 禁止在生成的构造函数上添加
-
lombok.log.fieldName = log
:- 设置日志字段的名称为
log
。
- 设置日志字段的名称为
-
lombok.getter.lazy = false
:- 禁用懒加载 getter。默认情况下,getter 不是懒加载的。
-
lombok.nonnull.flagUsage = warn
:- 当使用
@NonNull
注解时,发出警告而不是错误。
- 当使用
-
lombok.var.flagUsage = warn
:- 当使用
var
关键字时,发出警告而不是错误。
- 当使用
示例
以下是一个更详细的 lombok.config
文件示例:
# 基本配置
config.stopBubbling = false
# Accessor 配置
lombok.accessors.chain = true
lombok.accessors.prefix = f # 如果字段名以 'f' 开头,则忽略前缀
# 构造函数配置
lombok.anyConstructor.suppressConstructorProperties = true
# 日志配置
lombok.log.fieldName = log
# Getter 配置
lombok.getter.lazy = false
# NonNull 配置
lombok.nonnull.flagUsage = warn
# Var 配置
lombok.var.flagUsage = warn
# EqualsAndHashCode 配置
lombok.equalsAndHashCode.callSuper = call
# ToString 配置
lombok.toString.callSuper = call
lombok.toString.exclude = password, sensitiveData
# Data 配置
lombok.data.copyableAnnotations = +javax.persistence.Entity
解释详细配置
-
lombok.accessors.prefix = f
:- 如果字段名以
f
开头,则生成的 getter 和 setter 方法会忽略这个前缀。 - 例如,字段
fName
会生成getName()
和setName(String name)
。
- 如果字段名以
-
lombok.equalsAndHashCode.callSuper = call
:- 在生成
equals
和hashCode
方法时,调用父类的方法。
- 在生成
-
lombok.toString.callSuper = call
:- 在生成
toString
方法时,调用父类的方法。
- 在生成
-
lombok.toString.exclude = password, sensitiveData
:- 在生成
toString
方法时,排除password
和sensitiveData
字段。
- 在生成
-
lombok.data.copyableAnnotations = +javax.persistence.Entity
:- 在使用
@Data
注解时,保留@Entity
注解。
- 在使用
总结
lombok.config
(配置文件):- 目的: 自定义 Lombok 库的行为。
- 内容: 包含各种配置选项,控制 Lombok 如何生成代码。
- 作用: 提高开发效率,减少样板代码,并提供一致的代码风格。
确保这个文件位于正确的目录下,并且内容正确无误。