Вы должны отделить ресурсы от вашего домена.
Даже если они могут показаться похожими, модель и ресурсы домена сильно отличаются.
Объекты домена - это ваше внутреннее представление. Реализация имеет ограничения в зависимости от того, как реализована ваша бизнес-логика/персистентность и другое дизайнерское решение. Например, они могут быть объектами JPA или могут быть неизменными.
Ресурсы представляют собой внешний мир. Может быть один-к-одному с Доменом или совершенно другим. Это не так редко, имея несколько представлений ресурсов для одного объекта домена.
Но, прежде всего, реализация ресурсов предназначена для отправки/приема на проводе. Таким образом, у него есть ограничения для того, чтобы быть развязанным/несогласованным.
Таким образом, ваше приложение должно иметь отдельные объекты для домена и ресурсов. С помощью Spring HATEOAS отображение выполняется с использованием ассемблеров ресурсов.
Вы можете посмотреть на этом примере приложения: https://github.com/opencredo/spring-hateoas-sample и связанное с этим сообщение: Implementing HAL hypermedia REST API using Spring HATEOAS
Спасибо! Вы знаете какой-нибудь учебник, где я могу узнать больше об этом? – Andres
@ Andres Есть некоторые на Spring HATEOAS [домашняя страница] (http://projects.spring.io/spring-hateoas/). В [Spring Developer Channel] (http://www.youtube.com/user/SpringSourceDev) на YouTube также есть несколько отличных видеороликов для создания спокойных сервисов с использованием Spring HATEOAS. – zeroflagL