JDBC以反射機制加載類註冊驅動連接MySQL
package test.jdbc;
//JDBC註冊驅動的另一種方式:(這種方式常用)
/*
如何讓一個類的靜態代碼塊執行?
所以直接反射此處要學習到的這個類,class文件。這個類就會被加載進JVM,靜態代碼塊在類加載時執行,所以就註冊瞭
就是利用反射來加載Driver類,利用類中的靜態代碼塊實現對驅動的註冊
那麼如何加載這個類?
非常簡單:反射機制!
Class.forName("com.mysql.jdbc.Driver");
Class.forName(類名); 這個類的執行會導致後面類的加載!
//1 註冊驅動
Class.forName("com.mysql.jdbc.Driver");
//這裡我們不需要接收返回值,因為我們主要需要的是類加載這個動作,且隻需要這個動作!。
//因為雙引號括起來是字符串,字符串可以寫到配置文件當中,
//這種方法常用是因為字符串可以寫到文件中!
//但是這樣不行,因為Class這個類會有異常,我們需要使用try
和catch
語句塊來環繞
package test.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; //JDBC註冊驅動的另一種方式:(這種方式常用) /* 如何讓一個類的靜態代碼塊執行? 所以直接反射此處要學習到的這個類,class文件。這個類就會被加載進JVM,靜態代碼塊在類加載時執行,所以就註冊瞭 就是利用反射來加載Driver類,利用類中的靜態代碼塊實現對驅動的註冊 那麼如何加載這個類? 非常簡單:反射機制! Class.forName("com.mysql.jdbc.Driver"); Class.forName(類名); 這個類的執行會導致後面類的加載! */ public class JDBC3 { public static void main(String[] args) { //1 註冊驅動 //這裡我們不需要接收返回值,因為我們主要需要的是類加載這個動作,且隻需要這個動作!。 //因為雙引號括起來是字符串,字符串可以寫到配置文件當中, //這種方法常用是因為字符串可以寫到文件中! try { Class.forName("com.mysql.jdbc.Driver"); //2 獲取連接 Connection connection = DriverManager.getConnection("", "root", "rota"); // System.out.println(connection); } catch (SQLException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } } }
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。