Java 8以降、JDBC-ODBCブリッジはJDKに含まれなくなります。
Class.forName("Sun.jdbc.odbc.JdbcOdbcDriver"); // classNotFoundException is thrown
JDBC-ODBCブリッジを接続する他のソリューションはありますか?
Java 8でもJDBC-ODBC Bridgeを使用できます。次の簡単なレシピに従ってください:
Sun\jdbcおよびSun\security\actionフォルダーをコピーし、フォルダー構造を保持します。つまり、次のようなフォルダ構造が必要です。
Sun --> Security --> Action
--> JDBC
CMDウィンドウを開きます。 Sunフォルダーの親フォルダーに移動します。次のコマンドを実行します:jar -cvf jdbc.jar Sun
lib
フォルダーにコピーします。それでもうまくいかない場合は、lib\ext
フォルダ。さて、私の意見では Oracleの従業員によるこのブログエントリ はすべてを言っています:
JDBC-ODBCブリッジの代わりに、データベースのベンダーが提供するJDBCドライバーまたは市販のJDBCドライバーを使用することをお勧めします。
JDBC-ODBCブリッジを使用しているのはどのようなアプリケーションですか?
JDBC-ODBCブリッジを接続する他のソリューションはありますか?
SunとOracleの 公式の役職 は長い間-
[JVMバンドル] JDBC-ODBCブリッジは移行ソリューションと見なされる必要があります[...] OracleはJDBC-ODBCブリッジをサポートしていません。
ただし、私の雇用主 OpenLink Software は、JVM 1.0以降、JDBCとODBCの間にエンタープライズグレードの商用タイプ1ブリッジを作成しました。これらは現在のJVMと完全に互換性があります1.8。詳細についてはこちらをご覧ください-
データベース接続ロジックを開くだけで既存のコードを変更できる合理的なソリューションを見つけました。
UCanAccessは、オープンソースのJDBCドライバーです。
http://ucanaccess.sourceforge.net/site.html
これには2つの依存関係があり、そのうちの1つにはさらに2つの依存関係があります。
jackcess-2.0.0.jar以降
commons-lang-2.4.jar
commons-logging-1.0.4.jar
hsqldb.jar(2.2.5)
これらはすべてオープンソースです。インターネット検索を実行し、必要に応じてダウンロードして解凍し、4つのjarすべてとUCanAccessのjarをプロジェクトのディレクトリ(JDBC-to-MSAccessなど)に配置します。 Ecpliseを使用している場合、メニューから「プロジェクト/プロパティ/ Javaコンパイラ/ライブラリ/外部JARの追加」を選択してビルドパスに追加し、5つのjarファイルをすべて選択します。
接続ロジックは本当に簡単です。
String strConnectionString = "";
Connection conAdministrator = null;
// Register driver
Class.forName( "net.ucanaccess.jdbc.UcanaccessDriver" );
// System.getProperty( "user.dir" ) => Current working directory from where application was started
strConnectionString = "jdbc:ucanaccess://" + System.getProperty( "user.dir" ) + "\\Your-database-name.<mdb or accdb>";
// Open a connection to the database
conAdministrator = DriverManager.getConnection( strConnectionString );
この質問に対する回答は古くからありますが、DataDirectのsequelinkを強調したかったのです。このブログで https://www.progress.com/blogs/jdbc-odbc-bridge-replacement-yields-performance-boost 著者は、彼らのブリッジが310%のパフォーマンス向上をもたらす方法について語っています。ブリッジの試用版はここからダウンロードできます: https://www.progress.com/jdbc/sequelink
Robert Petermeierは、H2ドライブがPostgreSQLドライバーを介してODBCをサポートしているため、Stackoverflowからのリンクに従ってドライバーをインストールできます PostgreSQLのセットアップODBC = Windowsの場合