Vue 前端向Java后台传递时间格式数据,进行数据查询,出现这个错误信息

org.springframework.validation.BeanPropertyBindingResult: 1 errors↵Field error in object 'equipmentsDispatchInfoVO' on field 'createTime': rejected value []; codes [typeMismatch.equipmentsDispatchInfoVO.createTime,typeMismatch.createTime,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [equipmentsDispatchInfoVO.createTime,createTime]; arguments []; default message [createTime]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'createTime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.util.Date] for value ''; nested exception is java.lang.IllegalArgumentException]"

查询了很多方法,最终使用前后台都进行格式化统一格式后解决。

代码示例:

前端传参:

<el-date-picker v-model="listQuery.beginTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="开始时间" />

后台接参:

/**
 * 开始时间
 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date              beginTime;

还有前台传值后台接参相差一天的问题也是由于默认格式不一致,统一格式化就可以。

Logo

前往低代码交流专区

更多推荐