Java 6附带JDBC 4,JDBC 4与以前版本的Java附带的JDBC不向后兼容。
我们有一个JDBC驱动程序,它必须同时支持Java 5和Java 6。如果我在驱动程序中实现新的接口,它在Java 5中不起作用,因为这些接口也使用新的类。所以我们有两个版本的驱动程序。有没有办法让一个jar同时用于Java5和6?
发布于 2009-08-07 17:09:51
如果您实现了一个JDBC 3.0驱动程序,并且您的客户机在Java 6中运行它,那么当它们调用任何新的JDBC 4.0方法时都会收到错误。这很少见,因为这些新方法并不经常使用,但如果你想变得简单,下面的解决方案(这是一个技巧)应该能做到:
用Java5编译
:
我们可以丢弃JDBC 4.0接口jar,因为:
唯一的潜在问题可能是java5的类加载器。如果找不到新的JDBC4.0接口(如java.sql.NClob),它可能会失败。我认为这不会在Sun JVM中发生,除非您调用一个返回这些新接口的方法,所以您应该做得很好。如果我错了,这是一个问题,在Java 5中运行时,只需将丢弃的jar (定义新的JDBC 4.0接口的jar)放在类路径中。
https://stackoverflow.com/questions/1238252
复制相似问题