JDBC 驱动升级到 Version 8.0.28 连接 MySQL 的踩坑记录
🐛问题描述
升级驱动到 mysql-connector-java 8.0.28
后,部署执行各种报错,但是把连接器切换到 mysql-connector-java-5.1.48
又没有问题,很是疑惑!
报错的信息大都是无法找到该类、无法连接
主要是配置好了,就没有留截图,大家主要注意和旧版本不同的地方就好
历经种种艰难险阻,终于是解决了,成功连接,下面给出解决方案
💡解决方案
第一种是菜鸟的示例,较为全面;如果感觉比较麻烦,可以使用第二种方案
1.🔎完整版
这里引用菜鸟教程示例
📡1.数据库环境搭建
复制代码
📡2.测试类连接
这里最最重要的就是 MySQL 版本的问题,新版更新了驱动类的名称为
com.mysql.cj.jdbc.Driver
复制代码
执行结果,连接成功
2.🔎精简版
上例考虑全面,使用异常较多,为了方便理解,我们简化下代码量
📡1.数据库环境搭建
复制代码
📡2.测试类连接
注意版本、资源释放的顺序(最先调用,最后释放,释放顺序和调用顺序相反)
复制代码
执行结果,连接成功
📒总结
毕竟是更新,多少会有一些改动,我们要学会去看更新了什么、学会去官方找解决方案
比如这次的报错就可以从最新的 jar 包中找到
在 5.x
版本之后,注册驱动的代码可以省略不写,就是这一段
复制代码
原因是:驱动 jar
包下,默认 META-INF services
目录下记录了对应驱动类名,无需再次书写
可能是我用的版本太老了,跟不上时代的发展辽~~
版权声明: 本文为 InfoQ 作者【攻城狮杰森】的原创文章。
原文链接:【http://xie.infoq.cn/article/66652052277eb6ce5b99de3dc】。文章转载请联系作者。
评论