Jdbc

Posted 蒋曾的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jdbc相关的知识,希望对你有一定的参考价值。

1.介绍

Jdbc是一套面向对象的应用程序接口,制定了统一的访问类关系数据库的标准接口,为各个数据库厂商提供了标准的接口实现。通过Jdbc,开发人员可以用纯java语言和标准sql语句编写完整的数据库应用程序。

2.流程

(1)注册Jdbc驱动:Class.forName(驱动名)//每个数据库都应该提供一个实习java.sql.Driver的类

(2)获得连接:DriverManager.getConnection(uri,user,password)

(3)执行操作:connection.createStatement().executeQuery(sql)

(4)处理数据:ResultSet.next()

(5)清理环境:XXX.close()

3.驱动类型

(1)JDBC-ODBC Bridge:JDBC桥接器用于访问安装在每台客户机上的ODBC驱动程序。 使用ODBC需要在系统上配置表示目标数据库的数据源名称(DSN)。

(2)JDBC-Native API Bridge:JDBC API调用将转换为本地C/C++ API调用,这是数据库唯一的。 这些驱动程序通常由数据库供应商提供,并以与JDBC-ODBC桥接相同的方式使用。

(3)JDBC-middleware:JDBC客户端使用标准网络套接字与中间件应用程序服务器进行通信。 套接字信息随后由中间件应用服务器转换成DBMS所需的调用格式,并转发到数据库服务器。

(4)Pure JDBC Driver:基于纯Java的驱动程序通过套接字连接与供应商的数据库直接通信。

4.Connection常用方法

createStatement(),prepareStatement() 创建并返回Statement或者PreparedStatement实例

setAotuCommit() 设置为false启动事务 配合 commit()  提交或者rollback() 回滚

setReadOnly() 设置是否只读

close() 关闭连接

5.Statement

executeQuery(sql) 执行静态select 返回永不为Null的ResultSet

executeUpdate(sql) 执行静态的 delete update insert,返回一个int为影响的行数

addBatch(sql) executeBatch() clearBatch() 批处理操作

close() 关闭

6.PreparedStatement

setXXX(index,data)   替换select语句中?号的位置

clearParameters() 清除参数

其余和Statement差不多

7.ResultSet

在createStatement(int type_1,int type_2)或者PrearXXX(X,X)时可以指定ResultSet的类型,第一个参数决定ResultSet的指针移动情况,第二个决定是否只读

first() last() previous() next() beforeFirst() afterLast() absolute(index) relative(int X) 指针移动

isXXX() 判断指针位置

close() 关闭

8.示例

Class.forName(JDBC_DRIVER);
con = DriverManager.getConnection(DB_URL,USER,PASS);
String sql="select name from student_mes where id=?";
st=con.prepareStatement(sql);
st.setInt(1, 100);
ResultSet rs=st.executeQuery();
while(rs.next())
{
System.out.println(rs.getString(1));
}
rs.close();st.close;con.close;

 

以上是关于Jdbc的主要内容,如果未能解决你的问题,请参考以下文章

面试常用的代码片段

mysql jdbc源码分析片段 和 Tomcat's JDBC Pool

JDBC操作数据库之查询数据

如何在片段中填充列表视图?

在 myeclipse中进行连接sql server的测试

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段