在用mybatis時,對mysql數據庫是datatime字段添加值是,發現添加成功后查看數據庫字段值是,只有年月日有值,時分秒則為0來表示的,更改為java.sql.date,time等也不行,如果將mybatis的映射xml的jdbcType="DATE"改為="TIME",會報異常:
1 com.mysql.jdbc.MysqlDataTruncation: Data truncation:xxxxx
解決方法如下:
1 對於mybatis操作Date/Time/DateTime,總結如下: 2 將pojo的屬性類型設置為java.sql.Date(或java.sql.Time, java.sql.Timestamp),此時會嚴格遵循這三種類型的語義。但此方法因存在前文中提到的性能問題,在JDK1.6以前的JDK版本中能少使用就少使用。 3 如果你想在pojo中使用java.util.Date, 則要注意: 4 完整的日期時間,要確保jdbcType為空,或為DATE,TIME以外的值 5 只需要時間,要指定jdbcType=”TIME” 6 只需要日期,要指定jdbcType=”DATE”
於是將映射的XML文件里的,jdbcType="DATE"這段代碼清了就可以了。