Я немного озадачен, выясняя различия между этими тремя. Предположим, что у меня есть Клиент -> Адресное отношение (JPA) Detached Entity также будет иметь это (ожидаемая загрузка). Где необходимо иметь дополнительный сводный корень? Где нужно иметь DTO? Это все более или менее одинаково?DDD: Может ли кто-нибудь объяснить различия между DTO, Aggregate Root и Detached Entity?
Одна из причин может заключаться в том, что сущность, совместимая с JPA, имеет некоторую информацию, которую клиент просто не интересует, например. @Entity
, @Id
, @OneToMany
.
Я могу легко конвертировать его в JSON/XML с помощью JAX-RS/-WS, и почти каждый клиент может с этим справиться, и где это необходимо? Все ли это почти то же самое или мне не хватает чего-то важного?
AggregateRoot не относится к DDD? Хммм ... Я не ожидал, что я ошибаюсь. К сожалению, Мартин Фаулер тоже вводил в заблуждение: http://martinfowler.com/bliki/DDD_Aggregate.html. В любом случае ... Мне интересно узнать, должен ли мой сервисный интерфейс ... тот, который принадлежит Microservice ..., должен вернуть отдельную сущность, или я должен перенести его в график связанных TO ... и в чем разница , где преимущества ... Только один намек мой друг: прежде чем downvoting попытаться прояснить, хорошо? – Subcomandante
А, я думал о корнях запросов. Похоже, я вдвойне безоговорочно ответил на ваш вопрос :) Извините за неудобства. – kostja
Нет проблем и thx для усилий ;-) – Subcomandante