4

好吧,标题几乎说明了一切。

有没有办法强制 Java 7 使用 JDBC 3.0 而不是 JDBC 4.0?

我希望答案是否定的,但我希望......好吧,这更像是一个冰雹玛丽。

你问,我为什么想做这样的事?

我们的数据库是 DB2。我们使用休眠。在迁移到 Java 7 的过程中(最终)我们遇到了这个错误:

https://forum.hibernate.org/viewtopic.php?f=1&t=997798

并且,最后一个响应的倒数第二行指出,修复是在 jdbc3.0 驱动程序 (db2jcc) 中,而不是在 jdbc4.0 驱动程序 (db2jcc4) 中。

谢谢你。克拉克。

4

2 回答 2

2

如果您将 jdbc3 驱动程序而不是 jdbc4 驱动程序放在类路径中,并且确保避免在代码中调用自 JDBC4 以来存在的方法,那么一切都应该完美无缺。

许多数据库还不支持 JDBC4,但可以在 Java 7 中使用,前提是您只调用驱动程序支持的方法。

于 2012-06-18T21:17:22.540 回答
0

将 jdbc3 驱动程序放入一个文件夹并编写一个仅从该文件夹加载的类加载器。使用该类加载器来加载驱动程序。然后,即使您的主机环境安装了其他驱动程序(即 jdbc4),您也可以使用此驱动程序。特别是,您可以完全控制使用哪个驱动程序。

于 2012-06-18T21:24:06.800 回答