У меня есть следующий код контроллера
@GetMapping("/users")
public ResponseEntity<UserDto> getUsers(Filter filter) {
return ResponseEntity.ok(userService.findUsers(filter));
}
Фильтр.java:
public class Filter {
private Integer page;
private Integer size;
private String sort;
... lots of other parameters
}
Параметры запроса записываются как объект Java, чтобы избежать добавления большого количества параметров в контроллер. Однако Spring делает все параметры необязательными. Я хочу, чтобы некоторые параметры, такие как page
и size
, были обязательными, а другие, такие как sort
, необязательными. Если бы они были параметрами контроллера, я мог бы использовать @RequestParam(required = true/false)
. Можно ли сделать что-то подобное в классе Java?