| JDBC是用于执行SQL的Java API,它将数据库存取的API与SQL陈述分开,实现数据库无关的API接口,藉由JDBC统一的接口,开发人员只要专注于SQL陈述,而可以不必理会底层的数据库驱动程序与相关接口。 使用JDBC,由厂商实现数据库的接口,而SQL的操作部份由Java程序设计人员负责,如果要更换驱动程序,则只要载入新的驱动程序来源即可,Java 程序的部份则无需改变。 简单的说,JDBC让Java程序设计人员在撰写数据库程序的时候,可以“写一个程序,适用所有的数据库”。 下图JDBC API、数据库驱动程序与数据库之间的关系: ![]() JDBC数据库驱动程序依实现方式可以分为四个类型:
使用者的电脑上必须事先安装好ODBC驱动程序,Type
1驱动程序利用Bridge的方式将JDBC的调用方式转换为ODBC的调用方式,用于Microsoft Access之类的数据库存取:
Application <--> JDBC-ODBC Bridge <--> ODBC
Driver <--> Database
驱动程序上层包装Java程序以与Java应用程序作沟通,将JDBC调用转为原生程序码的调用,下层为原生语
言(像是C、C++)来与数据库作沟通,下层的函数库是针对特定数据库设计的,不若Type 1可以对ODBC架构的数据库作存取:
Application <--> Native-API Bridge <-->
Native Driver <--> Database
透过中间件来存取数据库,使用者不必安装特定的驱动程序,而是由驱动程序调用中间件,由中间件来完成所有的数据
库存取动作,然后将结果传回给驱动程序:
Application <--> JDBC-middleware <-->
middleware <--> Database
使用纯Java撰写驱动程序与数据库作沟通,而不透过桥接或中间件来存取数据库:
Application <--> Pure Java Driver <--> Database MySQL的JDBC驱动程序属于Type 4,称之为Connector/J,目前有支持JDBC 2.0与JDBC 3.0的版本,您可以在以下的网站取得: http://www.mysql.com/products/connector-j/index.html |