java - 替代 JDBC-ODBC 桥

标签 java jdbc odbc jdbc-odbc

在 Java 8 中 JDBC-ODBC-Bridge will be removed .典型的错误是:

java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver

您知道可能的替代品吗?我找到了易软。但是这个桥需要一个不在 Java VM 中运行的额外服务器。它是 3 类驱动程序而不是 1 类驱动程序。还有其他选择吗?

最佳答案

另一个解决方案是从 1.7 JRE 中获取 ODBC 内容并将其打包到它自己的 JAR 文件中。

为此(这是针对 Windows 64 但过程应该相同),您需要从 1.7 JRE bin 中获取 JdbcOdbc.dll 并将其复制到 1.8 JRE 垃圾箱。

接下来,将 1.7 JRE 的 lib\rt.jar 的内容解压到另一个位置。提取后,删除除

之外的所有内容
sun\
    jdbc\
        odbc\
            *
    security\
        action\
            LoadLibraryAction.class 

然后用剩下的内容创建一个 JAR 文件(JAR 的根内容应该是 META-INF 和 sun)。将 JAR 文件复制到 1.8 JRE 的 lib\ext 文件夹中。

关于java - 替代 JDBC-ODBC 桥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13358217/

相关文章:

java - 尝试压缩位图时出现 OutOfMemoryError

java - 字符类型的 if/else 语句

java - JDBC 部署错误 - NoClassDefFounderror

sql - 参数化 SQL 的性能

c++ - 在 SELECT 中拆分一个 varbinary

java - 有没有一种方法可以更改/编辑导入到 Android Studio 的图标,就像编辑已预安装的图标一样?

java - Spring JDBC 不使用 log4j 记录 SQL

Mysql性能

sql-server-2005 - 有没有办法强制 jdbc 连接使用 TCP?

mysql - 主机...在连接到在线 MySQL 数据库时 ODBC 连接中不允许出现错误