Да, вы можете использовать пользовательские преобразователи параметров в Spring
1 Создать компонент преобразователя, который реализует интерфейс Spring преобразователя
@Component
public class StringToRightsModeConverter implements Converter<String, RightsMode> {
@Override
public RightsMode convert(String s) {
try{
return RightsMode.valueOf(s);
} catch (Exception e) {
return RightsMode.getByCode(s);
}
}
}
2 Вот и все.Spring автоматически использует его для преобразования типа String -> RightsMode
@GetMapping({"/periods"})
public List<Period> periods(
@RequestParam(required = false) RightsMode rightsMode) {
................................................................
}
Преобразование типа Spring 3