JAVADBC常見面試題及答案
什么是JDBC,在什么時候會用到它?
JDBC的全稱是Java DataBase Connection,也就是Java數據庫連接,我們可以用它來操作關系型數據庫。JDBC接口及相關類在java.sql包和javax.sql包里。我們可以用它來連接數據庫,執行SQL查詢,存儲過程,并處理返回的結果。
JDBC接口讓Java程序和JDBC驅動實現了松耦合,使得切換不同的數據庫變得更加簡單。
有哪些不同類型的JDBC驅動?
有四類JDBC驅動。和數據庫進行交互的Java程序分成兩個部分,一部分是JDBC的API,實際工作的驅動則是另一部分。
A JDBC-ODBC Bridge plus ODBC Driver(類型1):它使用ODBC驅動連接數據庫。需要安裝ODBC以便連接數據庫,正因為這樣,這種方式現在已經基本淘汰了。
B Native API partly Java technology-enabled driver(類型2):這種驅動把JDBC調用適配成數據庫的本地接口的'調用。
C Pure Java Driver for Database Middleware(類型3):這個驅動把JDBC調用轉發給中間件服務器,由它去和不同的數據庫進行連接。用這種類型的驅動需要部署中間件服務器。這種方式增加了額外的網絡調用,導致性能變差,因此很少使用。
D Direct-to-Database Pure Java Driver(類型4):這個驅動把JDBC轉化成數據庫使用的網絡協議。這種方案最簡單,也適合通過網絡連接數據庫。不過使用這種方式的話,需要根據不同數據庫選用特定的驅動程序,比如OJDBC是Oracle開發的Oracle數據庫的驅動,而MySQL Connector/J是MySQL數據庫的驅動。
JDBC是如何實現Java程序和JDBC驅動的松耦合的?
JDBC API使用Java的反射機制來實現Java程序和JDBC驅動的松耦合。隨便看一個簡單的JDBC示例,你會發現所有操作都是通過JDBC接口完成的,而驅動只有在通過Class.forName反射機制來加載的時候才會出現。
我覺得這是Java核心庫里反射機制的最佳實踐之一,它使得應用程序和驅動程序之間進行了隔離,讓遷移數據庫的工作變得更簡單。在這里可以看到更多JDBC的使用示例。
【JAVADBC常見面試題及答案】相關文章:
常見.net面試題及答案06-19
銀行常見面試題及參考答案09-04
有關面試題及答案09-01
hr面試題及答案05-10
linux面試題及答案03-19
常見面試題目及解析08-11
常見面試題及回答思路09-05
文秘面試題目及答案02-28
教師招考面試題及答案11-21