JDBC概述
JDBC是java语言提供访问操作数据库的一种途径
Jdbc驱动
JDBC是一种跨品台的实现机制,是 接口规范的定义。
DS模式: data sever
java.sql JDBC的核心类和接口
javax.sql 数据库连接池,数据源,JNDI和Rowset等高级特征
JDBC常用接口和类
driverManager 驱动管理器获得数据库连接
connection 数据库连接接口
statement 数据接口,用来静态操作数据库
PreparedStatement 预定义语句,用来动态操作sql语句
CallableStatement 可以储存过程的预定义语句
ResultSet 结果集,保存数据记录的结果集合
ResultSetMetaData 结果集元数据,如:列名称,列类型等
DatabaseMetaData 数据元数据,如:数据库名称,版本等
JDBC编程步骤
—加载数据库驱动
—获得数据库连接
—创建语句
—执行查询
—遍历结果集
—关闭数据库连接
反射机制:Class.forName(“类地址”);得到所给类的实例化
注:数据库中的数据类型和java中的数据类型具有一定的对应关系
Connection
Connection简介
—获得数据库连接是操作数据库的第一步,是应用程序和数据库的一个“握手”过程
—数据库打开的连接数是有限的,所以连接使用完成需要关闭
Connection获取数据连接的步骤
—Class.forName 驱动
—DriverManager 获取连接
关闭自动提交:Connection.setAutoCommit(false);
自动提交:Connection.commit();
事务:提交,回滚
设置断点(逻辑控制点):Savepoint sql = Connection.setSavepoint();
回滚:Connection.rollback();
Statement接口
将sql语句发送到数据库
提供了一个操作数据库语句的功能,可以用他来创建表,插入记录,修改记录,删除记录等操作
ResultSet(结果集)
简介:表示数据结果集的数据表,通常通过执行查询数据库的语句生成。resultSet对象具有指向其当前行的指针。
java数据类型和mysql数据类型的对应关系
ResultSet常用方法:
-ResultSet.next()
返回boolean类型数据,用来判断结果集中是否有数据
-ResultSet.getXXX()
获得结果集中的数据
—可以根据列名称
—可以根据列索引
MetaData(源数据)
—结果集的MetaData
ResultSet的MetaData方法返回结果集数据对象ResultSetMetaData
—数据库的MetaData
通过数据库连接的getMetaData方法可以获取数据库连接的对象实例 DatabaseMetaData
PreparedStatement
简介:sql语句被预编译并存储在PreparedStatement对象中,然后可以使用此对象多次高效的执行该语句。
Statement :静态的
PreparedStatement :动态的
占位符“?”赋值调用如下方法:
占位符只能代表某一列的列值。
接口是纯抽象方法组成的抽象类
CallableStatement(调用存储过程)
简介:用于执行SQL存储过程的界面。
—调用简单的存储过程
—调用有输入参数的存储过程
—调用即有输入又有输出的存储过程