20.3 JDBC中常用的类和接口

  在Java语言中提供了丰富的类和接口用于数据库编程,利用这些类和接口可以方便地进行数据访问和处理,本节将介绍一些常用的JDBC接口和类,这些类或接口都在java.sql包中。
1、Connetction接口
  Connetction接口代表与特定的数据库的连接,在连接上下文中执行SQL语句并返回结果,它的常用方法如下所示:

方法功能描述
createStatement()创建Statement对象
createStatement(int resulteSetType, int resulteSetCocurrency)创建一个Statement对象,该对象将生成具有给定类型、并发性和可保存性的ResulteSet对象
preparedStatement()创建预处理对象preparedStatement
isReadOnly()查看当前Connetction对象的读取模式是否为只读形式
setReadOnly()设置当前Connetction对象的读写模式,默认为非只读模式
commit()使所有上一次提交/回滚后进行的更改成为持久更改,并释放此Connection对象当前持有的所有数据库锁
roolback()取消在当前事务中进行的所有更改,并释放此Connection对象当前持有的所有数据库锁
close()立即释放此Connection对象的数据库和JDBC资源,而不是等待它们被自动释放

 

2、Statement接口
  Statement接口用于在已经建立连接的基础上向数据库发送SQL语句。在JDBC中有3种Statement对象,分别是Statement、PreparedStatement和CallableStatement。Statement对象用于执行不带参数的简单的SQL语句;PreparedStatement继承了Statement,用来执行动态的SQL语句;CallableStatement继承了PreparedStatement,用于执行对数据库的存储过程的调用。Statement接口的常用方法如下所示:

方法功能描述
execute(String sql)执行静态的SELECT语句,该语句可能返回多个结果集
executeQuery(String sql)执行给定的SQL语句,该语句返回单个ResulteSet对象
clearBatch()清空此Statement对象的当前SQL命令列表
executeBath()将一批命令提交给数据库来执行,如果全部命令执行成功,则返回更新计数组成的数据。数据元素的排序与SQL语句的添加顺序对应
addBatch(String sql)将给定的SQL命令添加到此Statement对象的当前命令列表中。如果驱动程序不支持批量处理,将抛出异常
close()释放Statement实例占用的数据库和JDBC资源

 

3、PreparedStatement接口
  PreparedStatment接口用来动态地执行SQL语句。通过PrepardStatement实例执行的动态SQL语句,将被预编译并保存到PreparedStatement实例中,从而可以反复第执行该SQL语句。PreparedStatement接口的常用方法如下所示:

方法功能描述
setInt(int index, int k)将指定位置的参数设置为int值
setFloat(int index, float f)将指定位置的参数设置为float值
setLong(int index, long l)将指定位置的参数设置为long值
setDouble(int index, double d)将指定位置的参数设置为double值
setBoolean(int index, boolean b)将指定位置的参数设置为boolean值
setDate(int index, date date)将指定位置的参数设置为date值
executeQuery()在此PreparedStatement对象中执行SQL查询,并返回该查询生成的ResulteSet对象
setString(int index, String s)将指定位置的参数设置为对应的String值
setNull(int index, intsqlType)将指定位置的参数设置为SQL NULL
executeUpdate()执行前面包含的参数的动态INSERT、UPDATE或DELETE语句
clearParameters()清除当前所有参数的值

 

4、DriverManager类
  DriverManager类用来管理数据库中的所有驱动程序。它是JDBC的管理层,作用域用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动程序之间建立连接。如果通过getConnection()方法可以建立连接,则经连接返回,否则抛出SQLException异常。DriverManager类的常用方法如下所示:

方法功能描述
getConnection(String url, String user, String password)指定3个入口参数(依次是连接数据库的URL、用户名、密码)来获取与数据库的连接
setLoginTimeout()获取驱动程序试图登录到某一数据库是可以等待的最长时间,以秒为单位
println(String message)将一条消息打印到当前JDBC日志流中

 

5、ResulteSet接口

  ResultSet接口类似于一个临时表,用来暂时存放数据库卡查询操作所获得结果集。ResulteSet实例具有指向当前数据行的指针,指针开始的位置在第一条记录的前面,通过next()方法可将指针向下移。
  在JDBC2.0(JDK1.2)之后,该接口添加了一组更新方法updateXXX(),该方法有两个重载方法,可根据列的索引号和列的名称来更新指定列。但该方法并没有将对数据进行的操作同步到数据库中,需要执行updateRow()或insertRow()方法更新数据库。ResulteSet接口的常用方法如下:

方法功能描述
getint()以int形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是0
getFloat()以float形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是0
getDate()

以date形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是null

getBoolean()以boolean形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是null
getString()以String形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是null
getObject()以Object形式获取此ResulteSet对象的当前行的指定列值。如果列值是NULL,则返回值是null
first()将指针移到当前记录的第一行
last()将指针移到当前记录的最后一行
next()将指针向下移一行
beforeFirst()将指针移到集合的开头(第一行位置)
afterLast()将指针移到集合的尾部(最后一行位置)
absolute(int index)将指针移到ResulteSet给定编号的行
isFirst()判断指针是否位于当前ResulteSet集合的第一行。如果是返回true,则返回false
isLast()判断指针是否位于当前ResulteSet集合的最后一行。如果是返回true,则返回false
updateInt()用int值更新指定列
updateFloat()用float值更新指定列
updateLong()用指定的long值更新指定列
updateString()用指定的String值更新指定列
updateObject()用Object值更新指定列
updateNull()将指定的列值修改为NULL
updateDate()用指定的date值更新指定列
updateDouble()用指定的double值更新指定列
getrow()查看当前行的索引号
insertRow()将插入行的内容插入到数据库
updateRow()将当前行的内容同步到数据表
deleteRow()删除当前行,但并不同步到数据库中,而是在执行close()方法后同步到数据库

转载于:https://www.cnblogs.com/studycode/p/9612832.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值