JDBC操作

JDBC

1.定义: jdbc: java  database connectivity  java与数据库的连接.

 

2.角色分类

服务器 (db):  a)、接收 sql    b)、执行 sql  c)、返回结果

客户端 (java):a)、接收数据  b)、组装sql  c)、发送SQL(与数据库建立联系)  d)、分析结果

3.面向对象编程: (1)java  制定标准 ,不同的数据库厂商实现 接口即可。java 中提供的接口  java.sql.* 包下,常用接口如下

 

(2) 、oracle厂商实现接口  (jar)

F:\app\Administrator\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar视安装路径而定

4.实现步骤:

加载驱动(选择数据库);获取连接(和数据库练习上了);获取处理快(构建一个执行和发送sql的对象);准备sql语句;发送|执行sql;获取到结果集;关闭资源.

具体示例如下:

 

5. 、处理块 

(1)静态处理块 Statement

Statement 是Java 执行数据库操作的一个重要接口,用于在已经建立数据库连接的基础上,向数据库发送要执行的 SQL语句。Statement对象,用于执行不带参数 的简单SQL语句。

执行静态 SQL 语句并返回它所生成结果的对象。

1)、创建 : 连接.Connection.createStatement()

2)、执行 :

ddl -->execute(dd语句) -- 通常不会在代码中执行 dml -->executeUpdate(dml语句) select -->executeQuery(select)

 

3)、特点:处理 不变的静态的 sql语句 优点: 直接查看sql ,方便处理错误 缺点:性能不高  拼接 sql麻烦  可能存在 sql注入

(2)预处理块 PreparedStatement

PreparedStatement 接口继承了Statement,并与之在两方面有所不同:有人 主张,在JDBC应用中,如果你已经是稍有水平开发者,你就应该始终以 PreparedStatement代替Statement.也就是说,在任何时候都不要使用 Statement。

由于 PreparedStatement 对象已预编译过,所以其执行速度要快于 Statement 对象。因此,多次执行的 SQL 语句经常创建为 PreparedStatement 对象,以提高效率。

1)、创建:创建:连接.prepareStatement(sql)

2)、执行:

存在? ,先填充参数再执行

ddl -->execute() dml -->executeUpdate() select -->executeQuery()

3)、特点 :处理 不变的静态的 sql语句 |可变的 sql语句 带 ? 的 sql 优点:性能高,方便编写sql  不存在sql注入 安全 缺点:不能直接打印sql语句  不方便处理错误.

6. 、分析 

执行完SQL语句后可能成功也可能失败,如果成功,有数据则我们很大一部分情况是 需要获取查询的结果。数据就是一切

ddl:没有异常就是成功 l dml: 结果>0就是成功 l select:分析结果集

对于select的结果集进行分析,类似于迭代器, 先判断(移动)再获取

next() getXxx(索引|列名|别名).

7. 释放资源 

释放资源的原则是 先打开的后关闭, 则我们的顺序一般为:

 结果集->处理块->连接

8.具体事例:

 

 

 

 

 

 

 

 

 

 

posted @ 2019-11-06 08:52  数据阮小白  阅读(118)  评论(0编辑  收藏  举报