使用dbutils的queryRunner.query() 报错: java.sql.SQLException: Cannot set borndate: incompatible types.

用到的jar包:

commons-dbutils-1.3.jar
mysql-connector-java-8.0.27.jar

import org.apache.commons.dbutils.QueryRunner;

使用queryRunner.query()方法,报如下错误:
在这里插入图片描述

原因分析:
好像是java实体类中的java.util.Date 和 mysql8中的datetime类型无法相互转换

java实体类
在这里插入图片描述
mysql
在这里插入图片描述
解决方案1:
把java实体类中的java.util.Date类型换成String类型,就是比较low,但也可以解决问题

在这里插入图片描述

解决方案2:
mysql-connector-java-8.0.27.jar
换成mysql 5.x版本好像也可以解决,但是我没有试过

其他解决方案:

spring中:
@DateTimeFormat 和 @JsonFormat 注解

Java中获取Mysql中datetime类型的数据

@JsonFormat、@JSONField、@DateTimeFormat的使用以及其区别


版权声明:本文为yi234567bo原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。