我正在尝试将 json 数据发布到 Java 中的控制器。
这是我的控制器:
@ResponseBody
@RequestMapping(value="/{schoolId}", method=RequestMethod.POST)
public ClassGroupDTO addClassGroup(@RequestBody ClassGroupDTO classgroup, @PathVariable Integer schoolId) {
return partyService.addClassGroup(classgroup, schoolId);
}
这是 ClassGroupDTO
public class ClassGroupDTO extends PartyDTO {
private PartyDTO titular;
private SiteDTO site;
@JsonDeserialize(using = LocalDateDeserializer.class)
private LocalDate startDate;
@JsonDeserialize(using = LocalDateDeserializer.class)
private LocalDate endDate;
...
}
我正在使用杰克逊 2.4.3。
当给出字段 startDate 或 endDate 时,我无法发布数据。
我尝试过多种发布格式。 (我正在使用 moment.js)
data.startDate = moment().toDate();
data.startDate = moment().toJSON();
data.startDate = moment().format("YYYY/MM/DD");
每次我收到错误请求错误时。
当我省略 startDate 或 endDate 时,数据将被发布并触发控制器。
如何将javascript日期反序列化为java.time.LocalDate?
我遇到了同样的问题,使用以下方法解决了它:
var dateString = new Date().toISOString().substring(0,10);
or
var dateString = new Date().toISOString().split("T")[0];
转换为 ISO 字符串(“2015-10-14T09:39:49.942Z”),然后仅保留前十个字符,即日期。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)