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, без изменения всей текущей архитектуры проекта.

Спасибо за вашу помощь и совет

0 ответов

Другие вопросы по тегам