我想在 Lombok 中使用数据类。由于它有大约十几个字段,因此我对其进行了注释@Data
以生成所有 setter 和 getter。但是,有一个特殊的字段我不希望实现访问器。
Lombok 是如何省略这个字段的?
您可以将访问级别传递给@Getter
和@Setter
注释。这对于使 getter 或 setter 受保护或私有很有用。它也可以用来覆盖默认值。
使用@Data
,默认情况下您可以公开访问访问器。您现在可以使用特殊访问级别NONE
来完全省略访问器,如下所示:
@Getter(AccessLevel.NONE)
@Setter(AccessLevel.NONE)
private int mySecret;
根据@Data 描述,您可以使用:
所有生成的 getter 和 setter 都将是公开的。要覆盖访问级别,请使用显式 @Setter 和/或 @Getter 注释来注释字段或类。您还可以使用此注释(通过将其与 AccessLevel.NONE 结合使用)来完全禁止生成 getter 和/或 setter。
使用以下代码在创建 setter 和 getter 时省略/排除。value键应该使用 inside@Getter
和@Setter
。
@Getter(value = AccessLevel.NONE)
@Setter(value = AccessLevel.NONE)
private String mySecret;