最近准备上线新业务,业务代码使用的是spring框架,将开发提供的代码仓库地址git clone到测试环境机器进行mvn打包部署到另外的测试机器中,在启动服务是报异常
java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Date
gg查了一下相关资料,原来是因为实际的字段在数据库中为空,其默认值为“0000-00-0000:00:00”,在mysql中作为一个特殊值存在。但是在java项目编译的时候会被视为不合法的值,被JVM认为格式不正确。
解决方法: 在jdbc url加上zeroDateTimeBehavior=convertToNull参数,重新启动服务后正常。