1、最近使用MyBatis时发现了java.sql.SQLException: Zero date value prohibited 的异常,其实是Mysql数据库在面对0000-00-00 00:00:00日期的处理时,如果没有设置对应的对策,就会产生异常。

所以解决的方法是在jdbcUrl中设置处理zeroDateTimeBehavior来处理

(1).driver-url=jdbc:mysql://127.0.0.1/test?zeroDateTimeBehavior=CONVERT_TO_NULL

ZERO日期会转化为null

注意:CONVERT_TO_NULL 一定是大写的,否则报错

(2)、数据库字段Date类型默认为null 

2、 mysql中遇到表字段跟mysql保留关键字问题处理

   在映射的实体类字段上,加上 @TableField ,如下所示

@TableField("`rank`")
private Integer rank;

3、遇到实体类跟表字段不一致的时候,加上@TableId,如下所示

@TableId(value = "product_id")
private Integer productId;

4、遇到实体类,自定义字段,不是数据库表字段时候,加上@TableField,如下所示

@TableField(exist = false)
private TStoreBrand brandList;
Logo

更多推荐