java-包com.mysql.jdbc.exceptions.jdbc4在Mysql Connector / J 8中不存在
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-包com.mysql.jdbc.exceptions.jdbc4在Mysql Connector / J 8中不存在,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1659字,纯文字阅读大概需要3分钟。
内容图文
将mysql-connector-java版本5.1.x的maven依赖性升级到8.0.x后,编译时会收到以下错误:
[ERROR] /home/dev/testproject/src/main/java/DatabaseOperation.java:20: error: package com.mysql.jdbc.exceptions.jdbc4 does not exist
[ERROR] import com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException;
[ERROR] /home/dev/testproject/src/main/java/DatabaseService.java:15: error: package com.mysql.jdbc.exceptions.jdbc4 does not exist
[ERROR] import com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException;
显然com.mysql.jdbc.exceptions.jdbc4已删除,迁移文档中没有任何弃用或注释.现在有什么选择?
解决方法:
确实,在发行说明或迁移文档中没有提到这一点.我在MySQL论坛:Connector/J 8, catching primary key violations上找到了相关主题.这里是MySQL代表的回答:
You can catch java.sql.SQLIntegrityConstraintViolationException.
MySQLIntegrityConstraintViolationException was needed because of c/J
5.1 hybrid code, it does nothing specific just extends this java.sql.SQLIntegrityConstraintViolationException.
换句话说,已删除该程序包以重用现有的java.sql异常类,这是一件好事,但仍应进行记录.作为上述讨论的结果,错误报告已创建:Bug #91439 upgrade guide needs to inform of removed/refactored exceptions
当我进一步检查项目中的错误时,我发现了这3个异常及其java.sql映射:
> com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException->
java.sql.SQLSyntaxErrorException
> com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException
-> java.sql.SQLIntegrityConstraintViolationException
> com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException
-> java.sql.SQLTransactionRollbackException
(而且我猜jdbc4包中的任何其他MySQL特定于MySQL的异常也都映射到java.sql包中的类似SQL异常)
内容总结
以上是互联网集市为您收集整理的java-包com.mysql.jdbc.exceptions.jdbc4在Mysql Connector / J 8中不存在全部内容,希望文章能够帮你解决java-包com.mysql.jdbc.exceptions.jdbc4在Mysql Connector / J 8中不存在所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。