Spring Rest默认提供从路径变量和url参数构建pojo的功能。
就我而言,我有 pojo:
public class MyCriteria {
private String from;
private String till;
private Long communityNumber;
private String communityName;
}
这是我的控制器中使用的。网址是http://localhost:8080/community/{communityNumber}/app. 请求结果
curl "http://localhost:8080/community/1/app?from=2018-11-14&till=2019-05-13&communityName=myCOm"
是:
{
'from':'2018-11-14';
'till':'2019-05-12';
'communityNumber':'1';
'communityName':'myCOm'
}
看起来效果很好。在 pojo 数据中包含按用途所需的类型会更好。所以我想要有字段from和till类型LocalDate。使用 spring 我希望这个解决方案几乎是开箱即用的。但由于生命周期,任何弹簧或杰克逊日期转换器都无法解决我的问题。
Spring 在注入日期之前验证 pojo 字段的类型,并且我得到类型不匹配异常。我认为一般原因是 spring 使用特殊的构建器,它尝试按名称查找所需的参数,并且忽略要在 pojo 内部应用的字段的注释。
问题是:
是否有任何优雅的解决方案可以通过 spring 构建 pojo,其中某些字段默认会转换为String格式?LocalDate
ABOUTYOU
慕仙森
弑天下
30秒到达战场
相关分类