Нужно ли предоставлять методы получения / установки для полей Auditable в Spring Data?

1

Я только что закончил читать документы для Spring Data Auditing, но я ничего не понял. Документы показывают, что просто использовать @CreatedBy, @CreatedDate и т.д. Достаточно, чтобы пометить поля как проверяемые поля. Тем не менее, это ничего не говорит о требовании геттеров или сеттеров.

Использует ли Spring Data аспекты для ввода геттеров/сеттеров, или я должен делать это вручную? Чтобы еще больше запутать проблему, документы указывают, что я могу расширить интерфейс Auditable который предоставляет все геттеры и сеттеры, если я не хочу использовать аннотации. Что, на мой взгляд, подразумевает, что getters & seters будут генерироваться автоматически, если я буду использовать аннотации.

Однако, когда я смотрю на скомпилированный файл.class с декомпилятором, я не вижу никаких геттеров и сеттеров, которые были введены.

С аннотациями есть ли какой-либо другой механизм доступа к этим полям аудита из моего кода или я должен намеренно создавать сеттеры/геттеры, если это функциональность, которую я хочу?

Теги:
spring-data
audit

1 ответ

0
Лучший ответ

Как указано в справочной документации, в настоящее время у вас есть два варианта: аудит на основе аннотаций и аудит на основе интерфейса:

Для аудита на основе интерфейса ваш объект реализует Auditable и наша инфраструктура будет вызывать сеттеры, открытые через интерфейс (см. Соответствующий фрагмент AuditableBeanWrapperFactory).

Для аудита, основанного на аннотациях, в настоящее время мы поддерживаем только настройку информации аудита непосредственно в поле (подробнее см. ReflectionAuditingBeanWrapper). Там есть билет в нашем трекере, чтобы узнать, как получить доступ к аксессуарам на основе аннотаций, и у нас это будет зафиксировано в первой вехе предстоящего релиза Dijkstra.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню