嗯,标题几乎说明了一切。
有没有办法强制Java 7使用JDBC 3.0而不是JDBC 4.0?
我希望答案是否定的,但我希望......好吧,这更像是一个冰雹玛丽。
为什么,你问,我想做这样的事吗?
我们的数据库是DB2。我们使用Hibernate。在迁移到Java 7(最后)的过程中,我们遇到了这个错误:
https://forum.hibernate.org/viewtopic.php?f=1&t=997798
并且,最后一个响应的最后一行指出,修复程序位于jdbc3.0驱动程序(db2jcc)中,而不是jdbc4.0驱动程序(db2jcc4)中。
谢谢。 克拉克。
答案 0 :(得分:2)
如果你把jdbc3驱动程序放在类路径而不是jdbc4驱动程序中,并且如果你确保避免在代码中调用自JDBC4以来存在的方法,那么一切都应该完美无缺。
许多数据库尚不支持JDBC4,并且可以与Java 7一起使用,前提是您只调用驱动程序支持的方法。
答案 1 :(得分:0)
将jdbc3驱动程序放入文件夹并编写仅从该文件夹加载的类加载器。使用该类加载器加载驱动程序。然后,即使您的主机环境安装了其他驱动程序(即jdbc4),也可以使用此驱动程序。特别是,您可以完全控制使用哪个驱动程序。