说一下JDBC,JDBC是一种可用于执行SQL语句的Java API,是连接应用程序和数据库的纽带,可以为多种关系数据库提供统一访问,它由一组用java编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,简单地说,JDBC 可做三件事:与数据库建立连接、发送 操作数据库的语句并处理结果。
但大多数的书里面都会讲到JDBC-ODBC,然后就很懵逼,啥啊!
那么先说啥是ODBC吧。
开放数据库连接(Open Database Connectivity,ODBC)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。ODBC基于SQL,并把它作为访问数据库的标准。这个接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代码访问不同的数据库管理系统。一个软件开发者开发的客户/服务器应用程序不会被束定于某个特定的数据库之上。ODBC可以为不同的数据库提供相应的驱动程序。对于ASP程而言,ODBC数据源是ASP程序的ADO组件和数据库之间的接口。
由于微软的数据库不是用Java语言来编写的,但是我们需要用java语言连接微软的数据库,这样就要编写一个桥连接,使java语言编写的代码也可以操作数据库。也就是说:
JDBC是使用通过JAVA的数据库驱动直接和数据库相连,而JDBC-ODBC连接的是ODBC的数据源,真正与数据库建立连接的是ODBC。这下懂了吧。
不过我还在网页上看见另一句话,建议使用JDBC直接连接,同时最好使用连接池!
说的真对,这么多年用MYSQL,一直都是用了一个叫“mysql-connector-java-5.1.35-bin.jar”的jar包,也就是java的数据库驱动,还没有用过ODBC呢,SQL Server没怎么学过,orz。。。
贴代码:
1.连接数据库
要访问数据库,首先加载数据库的驱动程序,只需要在第一次访问数据库时家再一次,然后每次访问数据时创建一个Connection对象,接着执行操作数据库的SQL语句,最后完成数据库操作后销毁前面的Connection对象即可。
将连接数据库作为单独的一个方法,并以Connection对象作为返回值,遇到对数据库执行操作的程序时可以直接调用Conn类的getConnection方法获取连接,增加代码重用性。 |
|