JDBC的MySQL连接字符串

6 3月

今天迁移一个应用,放在heroku死活没法运行。仔细对比以后发现heroku会暴露名为JDBC_DATABASE_URL的环境变量,而这个环境变量只有一个默认参数reconnection=true。

而原应用运行环境中还多了两个参数,一个是 allowMultiQueries 和 zeroDateTimeBehavior 。最开始没有太在意,想着应用很简单,无非就是影响一下性能而已,结果直接无法运行,被迫加上。

来看看这两个参数,第一个 allowMultiQueries 是运行一次运行多行。多行是指命令层级的含义,比如 select 'hello';select 'world' 。

第二个 zeroDateTimeBehavior 是对于时间的处理,比如有一个条插入语句,没有提供需要的时间时,默认情况会抛出

这时候将 zeroDateTimeBehavior 指定为convertToNull可以避免写入错误的值。

发表评论

电子邮件地址不会被公开。