mysql的三種驅動類型


http://862123204-qq-com.iteye.com/blog/1566581

 

1. Class.forName("com.mysql.jdbc.Driver");//加載數據庫驅動

 

Java代碼   收藏代碼
  1. Class.forName("com.mysql.jdbc.Driver");//加載數據庫驅動  
  2.  String url="jdbc:mysql://localhost:3306/databasename";//數據庫連接子協議  
  3.  Connection conn=DriverManager.getConnection(url,"username","password");  

 

  此方式由於參數為字符串,因此很容易修改,移植性強。

 

最常見的注冊方式,也是推薦的方式。

2. new com.mysql.jdbc.Driver() ;//創建driver對象,加載數據庫驅動

 

Java代碼   收藏代碼
  1. new com.mysql.jdbc.Driver();//創建driver對象,加載數據庫驅動  
  2.  String url="jdbc:mysql://localhost:3306/databasename";//數據庫連接子協議  
  3.  Connection conn=DriverManager.getConnection(url,"username","password");  

 

這里不需要這樣寫DriverManager.registerDriver(new com.mysql.jdbc.Driver()),原因是com.mysql.jdbc.Driver類的靜態代碼快里面已經進行了修改的操作 

 

Java代碼   收藏代碼
  1. static {  
  2.         try {  
  3.             java.sql.DriverManager.registerDriver(new Driver());  
  4.         } catch (SQLException E) {  
  5.             throw new RuntimeException("Can't register driver!");  
  6.         }  
  7.     }  

 

由new com.mysql.jdbc.Driver()可以知道,這里需要創建一個類的實例。創建類的實例就需要在java文件中將該類通過import導入,否則就會報錯,即采用這種方式,程序在編譯的時候不能脫離驅動類包,為程序切換到其他數據庫帶來麻煩

 

3.System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver");

 

Java代碼   收藏代碼
  1. System.setProperty("jdbc.driver","com.mysql.jdbc.Driver");//系統屬性指定數據庫驅動  
  2. String url="jdbc:mysql://localhost:3306/databasename";//數據庫連接子協議  
  3. Connection conn=DriverManager.getConnection(url,"username","password");  

 

   可以同時導入多個jdbc驅動,中間用冒號“:”分開

 

比如System.setProperty("jdbc.drivers","XXXDriver:XXXDriver:XXXDriver");

這樣就一次注冊了三個數據庫驅動

總結:推薦1,和2兩種方式。
原因:3在編譯時需要導入對應的lib。1,2不需要。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM