Json-API: формат пользовательского Rest endPoint в SpringBoot
Не стесняйтесь сказать мне, если я не иду в правильном направлении.
В моем проекте мы предоставляем несколько конечных точек для пользовательских объектов, которые содержат часть различных объектов. Я хотел бы, чтобы эти ответы и параметры запроса конечных точек уважали JSON-API. Использование этих ViewObjects дает нам возможность отправлять только данные, специально используемые клиентом, а не все содержимое объекта со сложными дочерними объектами.
Я использую SpringBoot, и я пытался следовать документации Katharsis для реализации.
MyApplication.java
@Configuration
@SpringBootApplication
@Import({KatharsisConfigV3.class})
public class MyApplication {
//default Spring boot main
}
MyObjectController.java
@RequestMapping(value = "/api/myobjects", method = RequestMethod.GET)
public List<MyObjectVO> getMyObjects() {
// Get and return complex objects after several tests on data
}
MyObjectVO.java
@JsonApiResource(type = "myObject")
public class MyObjectVO{
@JsonApiId
private String id;
private String name;
// etc...
}
application.properties
katharsis.pathPrefix=/api
katharsis.resourcePackage=com.me
В настоящее время вывод
[ { "id": "1", "name": "MyObject" }, { "id": "2", "name": "MyObject2" } ]
Возможно ли и как использовать Katharsis для сопоставления, как это делает в настоящее время Джексон, но в формате JSON-API, без изменения всей текущей архитектуры проекта.
Спасибо за вашу помощь и совет