Как ограничить размер ключа в ответе Json при весенней загрузке?

изображение Это мой ответ JSON, в ответе есть атрибут (ключ) с именем DATA, который представляет собой список списков и содержит более 1000 списков.

Я хочу ограничить размер данных (атрибут внутри json) до 30 списков и 90 списков для двух разных контроллеров. Я не могу узнать, как это сделать.

Вам нужно будет программно (в вашей реализации Java) точно сказать, как подобрать только 30 элементов (или 90) для вашего DTO (объект передачи данных)

xyz 14.11.2022 13:56
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
76
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Извлеките бизнес-логику в класс @Service и укажите требуемый лимит в качестве параметра из контроллера:

@Service
public class MyService {

  MyDto createResponse(int limit) {
    //.... slice list size, e.g.
    List limitedData = data.subList(0, limit);
    //...
  }
}


@RestController
public class MyController1 {

  @Autowired
  MyService myService;

  MyDto createResponse() {
    return myService.createResponse(30);
  }
}



@Controller
public class MyController2 {

  @Autowired
  MyService myService;

  MyDto createResponse() {
    return myService.createResponse(100);
  }
}

Вы можете заглянуть в Pageable. Этот интерфейс можно использовать для разбиения данных на страницы. Таким образом, вы можете вернуть подмножество из 30 элементов, а также отобразить количество других страниц.

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