【发布时间】:2018-05-03 08:44:44
【问题描述】:
我正在尝试获取以下格式“2018-01”的查询参数以用作 YearMonth (java.time) 对象。
在我的控制器中,我有以下参数:
@RequestParam(value = "start") @DateTimeFormat(pattern = "yyyy-MM") YearMonth start
但我收到以下错误: 无法将类型 [java.lang.String] 的值转换为所需类型 [java.time.YearMonth];嵌套异常是 java.lang.IllegalStateException:无法将类型 [java.lang.String] 的值转换为所需类型 [java.time.YearMonth]:找不到匹配的编辑器或转换策略
编辑:
根据此链接:https://jira.spring.io/browse/SPR-13518,从 4.2.4 版本开始支持 java.time.YearMonth 转换,我使用的是 spring 版本 4.3.3.RELEASE
【问题讨论】:
-
你能用
LocalDate代替YearMonth吗? (我没用过@DateTimeFormat,只是一个想法) -
查看错误信息的末尾:
no matching editors or conversion strategy found。这意味着 Spring 找不到将您的String转换为YearMonth对象的属性编辑器或转换器。
标签: java spring-mvc