0

Microsoft JDBC Driver 4.0提供了sqljdbc.jar 和 sqljdbc4.jar。根据发行说明,sqljdbc.jar 可以与 Java 5 一起使用,sqlserver4.jar 可以与 Java 6 和 7 一起使用。

我当前的项目使用 Java5 编译,因此我们的客户可以根据他们的 Web/应用程序服务器支持在 Java5 或 Java6 或 Java7 中运行它们。目前我为所有 web/app 服务器创建了一个 war 文件。由于 Microsoft 为各种 JDK 提供了不同的 jar,有没有办法根据 Java 版本使用单个部署包加载适当的 sqljdbc jar?

我可以为 Java5 和 Java6 创建单独的 war 文件,这可以解决问题,但想与其他人一起检查是否有其他选项。

4

1 回答 1

2

问题是 JDBC 4 添加了额外的接口、SQLException子类等。所以你肯定不能sqljdbc4.jar与 Java 5 一起使用,相反的方法可能是可能的,但是(这是一个强大的但是),如果应用程序或应用程序服务器尝试访问 JDBC 4 中定义的方法之一,然后它将失败并严重失败。

换句话说:要么创建特定于 Java 版本的 WAR,要么单独部署驱动程序,而不是作为应用程序的一部分。

于 2012-11-12T14:02:22.173 回答