Ответы:
Вы можете пройти уровень доступа к @Getter
и @Setter
аннотациям. Это полезно, чтобы сделать методы получения или установки защищенными или частными. Это также может быть использовано для переопределения по умолчанию.
С помощью у @Data
вас есть публичный доступ к методам доступа по умолчанию. Теперь вы можете использовать специальный уровень доступа, NONE
чтобы полностью опустить аксессор, например так:
@Getter(AccessLevel.NONE)
@Setter(AccessLevel.NONE)
private int mySecret;
@Builder
может быть применено к функциям и конструкторам, а также к классам, и предлагает установку только тех атрибутов, которые появляются в сигнатуре этой функции.
AccessLevel.NONE
.
Согласно описанию @Data вы можете использовать:
Все сгенерированные методы получения и установки будут открытыми. Чтобы переопределить уровень доступа, аннотируйте поле или класс явной аннотацией @Setter и / или @Getter. Вы также можете использовать эту аннотацию (комбинируя ее с AccessLevel.NONE), чтобы полностью исключить создание метода получения и / или установки.
Используйте приведенный ниже код для исключения / исключения из создания сеттера и геттера.
@Getter(AccessLevel.NONE)
@Setter(AccessLevel.NONE)
private int mySecret;
Spring boot 2.3 version, это работает хорошо.
Если у вас есть установщик и получатель как частный, он появится в проверках PMD.