Failed to convert from type [java.lang.String] to type [java.sql.Date] for value ‘2022-11-15 17:27:46’; nested exception is java.lang.IllegalArgumentException]]
前端使用layui 时间选择器获取时间,变量类型为String
controller层用bean接收,变量类型为date,类型不匹配,导致前后端传值时报错。
在对应的bean set方法将string类型转为date类型即可解决:
**
private Date discover_time ; // 发现时间
public Date getDiscover_time() {
return discover_time;
}
public void setDiscover_time(String discover_time) {
System.out.println(discover_time);
if(discover_time==""){
this.discover_time=null;
}else{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
this.discover_time = sdf.parse(discover_time);
System.out.println("this:"+this.discover_time);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
注意:bean层应使用java.util.Date;而不是java.sql.Date。