JDBCドライバを登録する3つの方法
3564 ワード
1. Class.forName("com.mysql.jdbc.Driver");//データベースドライバのロード
Javaコード
Class.forName("com.mysql.jdbc.Driver");// String url="jdbc:mysql://localhost:3306/databasename";// Connection conn=DriverManager.getConnection(url,"username","password");
この方式はパラメータが文字列であるため,修正が容易で移植性が強い.
最も一般的な登録方法であり、推奨方法でもあります.
2. new com.mysql.jdbc.Driver() ;//driverオブジェクトの作成、データベースドライバのロード
Javaコード
new com.mysql.jdbc.Driver();// driver , String url="jdbc:mysql://localhost:3306/databasename";// Connection conn=DriverManager.getConnection(url,"username","password");
ここではDriverManagerと書く必要はありませんregisterDriver(new com.mysql.jdbc.Driver()はcom.mysql.jdbc.Driverクラスの静的コード快里はすでに修正の操作を行いました
Javaコード
static { try { java.sql.DriverManager.registerDriver(new Driver()); } catch (SQLException E) { throw new RuntimeException("Can't register driver!"); } }
new com.mysql.jdbc.Driver()は、クラスのインスタンスを作成する必要があることを知っています.クラスのインスタンスを作成するにはjavaファイルでクラスをimportでインポートする必要があります.そうしないと、プログラムがコンパイル時にドライバクラスパッケージから離れず、他のデータベースに切り替えるのが面倒になります.
3.System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver");
System.setProperty("jdbc.driver","com.mysql.jdbc.Driver");// String url="jdbc:mysql://localhost:3306/databasename";// Connection conn=DriverManager.getConnection(url,"username","password");
複数のjdbcドライバを同時にインポートできます.
例えばシステムsetProperty("jdbc.drivers","XXXDriver:XXXDriver:XXXDriver");
これにより、3つのデータベースドライバが一度に登録されます.
まとめ:1と2の2つの方法をお勧めします.理由:3コンパイル時に対応するlibをインポートする必要があります.1,2は必要ありません.