Что такое Domain Entity vs JPA Entity и нужно ли их разделять?

Senior
224 просмотров
AFK Offer AI

В богатой доменной модели (Rich Domain Model) Domain Entity содержит бизнес-логику, инварианты, методы. JPA Entity — это маппинг на таблицу, технический артефакт. Их совмещение (JPA анотации на domain entity) — компромисс: проще, но domain знает о persistence. Разделение: domain entity чистый POJO, mapper переводит в JPA entity для persistence. Для большинства проектов совмещение приемлемо. Разделение нужно когда схема БД и доменная модель существенно отличаются.

Следующий вопрос

Что такое OpenAPI и как организовать Swagger в продакшен-проекте?