【发布时间】:2018-08-16 22:45:14
【问题描述】:
注意:这不是重复的。另一个问题与 Spring 请求参数的自动编组无关。它有一个解决方案,您可以使用 jackson 手动编组对象。
我希望允许开发人员使用可以不区分大小写的枚举来创建请求对象。其他字段/属性可能需要区分大小写匹配,但枚举应该不区分大小写。
到目前为止,我发现的唯一方法 (initBinding) 要求您在编译时指定确切的枚举类。我正在寻找一种更通用的方法来将 JSON 请求中的字符串编组为枚举。
目前我发现的唯一方法:
@RestController
public class TestController
{
//...elided...
@InitBinder
public void initBinder(final WebDataBinder webdataBinder)
{
webdataBinder.registerCustomEditor( MyEnum.class, new CaseInsensitiveEnumConverter() );
}
}
但这需要使用已知的枚举进行编译。
【问题讨论】:
标签: java spring spring-boot enums jackson