У меня есть сценарий использования, в котором у нас есть несколько параметров, передаваемых в контроллер REST, и параметры должны быть проверены на непустую, и некоторые пользовательские проверки. Кроме того, для некоторых параметров параметры фильтра поддерживаются с начальными значениями, заканчивающимися с. Я могу проверить параметры для первого уровня фильтра, но не могу заставить его работать для следующего уровня фильтра. Например: строка запроса - filter.firstname, и она поддерживается с необязательными аргументами начальных и конечных значений.
Может ли кто-нибудь помочь, предоставив несколько советов о том, как я могу проверить параметр, когда кто-то передает filter.firstname или filter.firstname.startswith для непустых значений?
Это пример кода для контроллера.
@GetMapping()
public CustomerResponseData findCustomers(@Valid FilterCustomer filter, HttpServletRequest request)
public class FilterCustomer {
@Valid
private FilterCustomerCriteria filter;
}
public class FilterCustomerCriteria {
@NotBlank
private String firstname;
@NotBlank
private String lastname;
}
public class FilterCustomerFinerCriteria {
@NotBlank
private String startswith;
@NotBlank
private String endswith;
}```