2017-04-01 68 views
0

有四种类型的JDBC驱动程序。Java JDBC类型和代码片段

  1. JDBC-ODBC
  2. JDBC原生
  3. JDBC-NETWORK
  4. 纯Java(无中间件)

我的问题是,如果JDBC-ODBC驱动程序使用:

Class.forname("sun.jdbc.odbc.JdbcOdbcDriver"); 

那么可以使用其他三种驱动程序类型.. ??

回答

4

有没有“其他三个驱动程序”,这些是驱动程序类型。其他JDBC类型需要供应商实现JDBC驱动程序。例如,对于Firebird,驱动程序Jaybird(我维护)提供了类型2和类型4实现来访问Firebird。同样,Oracle也有一个JDBC驱动程序,它提供了访问Oracle的类型2和类型4实现。大多数数据库至少提供一个4型驱动程序。

类型3驱动程序相对较少(或者至少:上次我看过/使用过一个是+/- 10年前),但它们涉及驱动程序部分和中间件服务器。

请注意,类型1驱动程序sun.jdbc.odbc.JdbcOdbcDriver已从Java 8中删除且不再可用。

+0

其他三个驱动程序的任何示例片断都会有所帮助。 –

+1

@JᴀʏᴅᴇᴠSʜɪʀᴏʏᴀ我认为你无法理解JDBC是如何工作的:JDBC是一个接口规范,每个驱动程序都实现了这个接口。有三个以上的其他驱动程序(至少一个用于公共数据库系统),但是在所有情况下,JDBC的工作原理都是一样的:您使用同一个API,假设驱动程序正确实现了规范 - 与使用它相同。驱动程序类型在大多数方面与最终用户无关(除了类型2需要本地依赖性,类型3需要安装中间件服务器)。 –

+0

@JᴀʏᴅᴇᴠSʜɪʀᴏʏᴀ你的问题只是表明你还没有阅读过这个答案。 – EJP