Я пытаюсь создать фиктивный сервис. Я создал конечную точку отдыха.
/OrderLine/lists/_generic?limit=3&_paging=NEXT
на слое сервиса. Я делаю
List<OrderLineDTO> listPOL = generateMockOrderLinesByCount(Constants.COUNT);
, так как я могу подать заявку? разбиение на страницы в этих фиктивных данных без использования репозитория
Я пытаюсь сначала преобразовать список в страницу, но это не кажется полезным или, может быть, я пытаюсь в неправильном направлении, пожалуйста, предложите.
Page<OrderLineDTO> listToPage(List<OrderLineDTO> list, Pageable pageable) {
int start = (int) pageable.getOffset();
int end = (int) ((start + pageable.getPageSize()) > list.size() ? list.size()
: (start + pageable.getPageSize()));
Page<OrderLineDTO> page = new PageImpl<OrderLineDTO>(list.subList(start, end), pageable,
list.size());
return page;
}
Мой окончательный ответ json, как будто мне нужно добавить поля на основе предела прохода, а максимальное число будет иметь некоторое значение c, скажем, 100. Таким образом, из 100 полей, что означает listPOL.size () = 100 и мне нужно получить эти 100 на основе данного примера ограничения 10. Это может быть получено до 10 раз ie. 10 * предел = 10 = 100
[
{
"_fields": {
//some data
}
},
{
"_fields": {
//some data
}
},
{
"_count": 3,
"links": [
{
"rel": "self",
"href": "http://localhost:8080/rest/orderLine/lists/_generic?_fields=_all&_limit=3",
},
{
"rel": "next",
"href": "http://localhost:8080/rest/orderLine/lists/_generic?_fields=_all&_limit=3&Company=32&orderLine=79",
},
{
"rel": "prev",
"href": "http://localhost:8080/rest/orderLine/lists/_generic?_fields=_all&_limit=3&Company=82&orderLine=23",
}
]
}
]