日期:2014-05-16  浏览次数:20447 次

jdbc 连接数据库代码示例

#使用JDBC操作数据库

????#1、JDBC基础

????#JDBC简介:JDBC(Java?Database?Connectivity)是一种可以执行SQL的Java?API,通过它可以用一种API操作不同的数据库.

????#JDBC驱动:不同数据库间,标准的SQL语句可以移植,而数据库实际通信协议及某些数据库特征不可移植,因此,JDBC和数据库之间须还有一层,用于将JDBC调用映射成特定的数据库调用,此特殊层就是JDBC驱动程序.

????常见的JDBC驱动有四种:

????》JDBC-ODBC桥,是最早实现的JDBC驱动程序,目的为了快速推广JDBC,非多线程,能力有限,此驱动程序将JDBC?API映射成ODBC?API

????》直接将JDBC?API映射成数据库特定的客户端API,这种驱动程序包含特定数据库的本地代码,可用于特定数据库的客户端

????》支持三层结构的JDBC访问方式,主要用于Applet阶段,通过Applet访问数据库

????》纯java的,直接与数据库实例交互,智能型的,知道数据库使用的底层协议,是目前最流行的JDBC驱动

????#JDBC常用接口和类简介

????DriverManager:用于管理JDBC驱动的服务类,主要方法是获得Connection对象

????public?static?synchronized?Connection?getConnection(String?url,String?user,String?pass)?throws?SQLException

????Connection:代表一个数据库连接物理会话,若放我数据库,须先获得数据库连接.常用方法

????》Statement?createStatement()?throws?SQLException?返回Statement对象

????》PreparedStatement?prepareStatement(Strin?sql)?throws?SQLException?返回编译的Statement对象

????》CallableStatement?preparedCall(Strin?sql)?throws?SQLException?返回的CallableStatement对象用于存储过程调度

????Statement:执行DML?SQL的工具接口,常用方法:

????》ResultSet?executeQuery(String?sql)?throws?SQLException?执行查询,返回结果集对应的ResultSet对象

????》int?executeUpdate(String?sql)?throws?SQLException?执行DML并返回受影响的行数

????》boolean?execute(String?sql)?throws?SQLException?返回boolean表式执行成功与否

????PreparedStatement?:是Statement的子接口,允许数据库预编译SQL,避免数据库每次重新编译,以后每次只改变SQL的参数,性能较好,常用方法

????》ResultSet?executeQuery()?throws?SQLException?执行查询,返回结果集对应的ResultSet对象

????》int?executeUpdate()?throws?SQLExc