form 表单时间传值
方式一
前台
let formData = new FormData();
formData.append('badDate', "2018-11-12");
后台
/**
* 使用对象接受 实体列中要添加注解
**/
//controller
public ResponseWrapper<String> addBadMsg(PartBadInfo partBadInfo) {}
//bean
@DateTimeFormat(pattern ="yyyy-MM-dd")
private LocalDate badDate;
方式二
let partBadInfo={
id: "1",
badDate: 2018-11-12
}
formData.append('partBadInfo', JSON.stringify(partBadInfo));
/**
*后台用String接受转字符串时候localDateTime类型要自定义转换器
**/
//controller
public ResponseWrapper<String> addBadMsg(@RequestParam("partBadInfo") String partBadInfo) {
Gson gson = new GsonBuilder().registerTypeAdapter(LocalDateTime.class, new JsonDeserializer<LocalDateTime>() {
@Override
public LocalDateTime deserialize(JsonElement json, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
Instant instant = Instant.ofEpochMilli(json.getAsJsonPrimitive().getAsLong());
return LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
}
}).create();
PartBadInfo o=gson.fromJson(partBadInfo, PartBadInfo.class);
}