Java连载131-Connection接口和Statement接口

Posted 心悦君兮君不知-睿

tags:

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

一、Connection接口

  • 该接口代表Java程序和数据的连接,只有获取该连接对象,才能访问数据库来操作数据表
  • 常用方法:
方法 说明
creatStatement() 创建并返回一个Statement实例,通常在执行无参数SQL语句时创建该实例
prepareStatement() 创建并返回一个PreparesStatement实例,通常在执行包含参数的SQL语句中执行,并对SQL语句进行预编译处理
prepareCall() 创建并返回一个CallStatement实例,通常在调用数据库存储过程中创建该实例
setAutoCommit() 设置当前Connecion实例的自动提交模式。默认是true,也就是说会自动提交更改到数据库;如果设置为false,需要调用commit()或者rollback()将更改提交到数据库
getAutoCommit() 查看当前Connection实例是否处于自动提交状态,是返回true,否返回false
setSavePoint() 在当前事务中创建并返回一个SavePoint实例,前提是Connection实例不能处于自动提交状态,否则就会抛出异常
releaseSavePoint() 从当前事务中移除SavePoint实例
setReadOnly() 设置当前事务的读取状态,默认是非只读状态。不能在事务中执行该操作,否则将会抛出异常,他有一个boolean类型的参数入口,默认是false,非只读,可以设置为true为只读
isReadOnly 判读是否为只读状态
isClosed() 查看当前Connection实例是否已经关闭
commit() 从上一次或者回滚开始以来所有的变更都提交到数据库,并释放Connection实例当前拥有的所有数据库锁
rollback() 取消当前事务中的所欲更改,并释放当前Connection实例拥有的所有数据库锁。该方法只能在非自动提交模式下使用,否则抛出异常,该方法有一个参数为SavePoint实例的重载方法,用来取消SavePoint实例之后的所有更改,并释放对应的数据库锁
close() 立即释放Connection实例所占用数据库和JDBC资源,即关闭数据库连接

二、Statement接口

  • java.sql.Statement接口用于执行静态的SQL语句并返回执行结果
  • 常用方法:
方法 说明
executeQuery(String sql) 执行指定的静态SELECT语句,并返回一个永远不为null的ResultSet实例。
executeUpdate(String sql) 执行静态的INSERT\\UPDATE\\DELETE语句,并返回一个int型同步更新记录的条数
clearBatch() 清除位于Batch中的所有SQL语句,如果驱动程序不支持批处理,将会抛出异常
addBatch(String sql) 将指定的SQL命令添加到Batch中,String型入口参数通常为INSERT或者UPDATE语句,如果驱动程序不支持批处理,将会抛出异常
executeBatch() 执行Batch中的所有所有SQL语句,如果全部执行成功,则返回由更新计数组成的数组,数组元素的顺序与SQL语句的顺序相对应,数组元素有以下几种情况:(1)大于等于0,说明SQL语句执行成功,此数为影响数据库中行数的更新计数;(2)SUCCESS_NO_INFO的值,说明SQL语句执行,但未得到受影响行数;(3)EXECUTE_FAILED:说明SQL语句执行失败,仅当执行失败后继续执行后面的SQL语句时出现。
close() 释放Statement占用的数据库和JDBC资源

三、源码:

以上是关于Java连载131-Connection接口和Statement接口的主要内容,如果未能解决你的问题,请参考以下文章

Java连载89-SorteSetComparable接口

Java连载54-两种单例模式接口详解

Java连载60-类之间的六种关系

Java连载132-PreparedStatementCallableStatementResultSet接

Java连载5-标识符关键字和字面值

Java连载92-Collections工具类泛型初步