У меня проблема с двумя контроллерами, и я не уверен, есть ли для этого решение. Я извлекаю из Интернета несколько рекламных объявлений (тысячи объявлений) и не могу извлечь их сразу, потому что загрузка всех этих объявлений на странице займет слишком много времени. По сути, первый контроллер - это контроллер POST, который возвращает всегда, скажем, первые 5 элементов из этого списка, и это выглядит так:
@RequestMapping(value = "/search1" , method = RequestMethod.POST)
public List search1(){
List<?> list1 = scrapper1.search1():
return list1;
}
Второй контроллер возвращает следующие 5 элементов за одно выполнение (до конца списка, а затем начинается с первых 5 элементов) из того же списка, но это другой метод, допустим, этот контроллер выглядит так:
@RequestMapping(value = "/search2", method = RequestMethod.POST)
public List search2(){
List<?> list2 = scrapper2.search2();
return list2;
}
Моя проблема в том, что если выполняется второй метод, скажем, 3 раза страница будет содержать элементы из этого списка от 10 до 15, и если первый метод будет выполнен снова, страница будет содержать элементы от 0 до 5, но теперь, если второй метод будет выполнен, он перейдет к элементам с 15-20. Мне нужны эти 2 контроллера, потому что у меня есть 2 кнопки на странице и есть несколько списков .. Мне нужно как-то сбросить второй метод всякий раз, когда первый метод из первого контроллера получает выполнено. Есть ли способы сделать это?




Для этого типа проблемы мы можем использовать PagingAndSortingRepository из весенних данных.