具体示例是对Date对象的(2011,11,24,8,10,AM)请求参数实现Convertor / PropertyEditor吗?
假设我的UI使用了一个小部件,该小部件使用6个html表单字段作为日历(2011,11,24,8,10,AM) - 这非常不方便..
理想的解决方案是,如果参数只有一个 - “yyyy:MM:dd:hh:mm:aa”,@ DateTimeFormat注释在该字段上,并且WebDataBinder已设置为DefaultConversionService + joda-time已启用classpath。
但我必须保持外观并使用该小部件。在handler方法中进行转换也会使验证复杂化。知道怎么做而不用处理器方法吗?
答案 0 :(得分:2)
如果您创建一个自定义包装器对象,其中包含每个输入参数的字段,则会填充public ... handlerMethod(InputDate date)
。然后,在同一个班级中,您可以toDateTime()
根据输入构建DateTime
。
您还可以使用自定义WebArgumentResolver
并在方法签名中添加自定义注释,例如@InputDate
。