Я читал, что HTTP-способ передать массив в запросе - это установить параметр несколько раз:
1) GET /users?orderBy=last_name&orderBy=first_name
Однако я также видел параметр с разделителями-запятыми ( и я считаю, что это «чище»):
2) GET /users?orderBy=last_name,first_name
Я хочу реализовать множественную сортировку (упорядочивание пользователей по last_name, затем повторяющиеся last_name упорядочиваются по first_name). С точки зрения кода это просто (библиотеки Google Guava спешат на помощь), но как мне это раскрыть? Сохраняет ли первый способ хотя бы порядок полей (сортировка по last_name, затем по first_name)?
Spring волшебным образом преобразует параметр в массив String [], если он задан несколько раз в запросе:
... @RequestParam("orderBy") String[] orderBy ... becomes ["last_name","first_name"]
Это заставляет меня думать, что первый способ считается наилучшим, хотя мне нравится второй способ ...