传智播客Java培训---JDBC

    大多数情况下,特别是企业级应用,数据需要进行持久化保存,以便于以后使用,在以前没有学习数据库的时候,我们都是将数据存放在本地硬盘文件或者XML数据文件中,比如说前一段时间做的小型图书管理系统和通讯录,都是将信息和数据存放在XML文件中,但是这很不方便而且安全性不高,大多数情况下都是将数据存放在像mysql这类关系型数据库中,而现在,在我们学习了数据库的基本操作以及JDBC后,我们就可以实现这个操作。

JDBCJava Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。在Java中,数据库存取技术可分为JDBC直接访问数据库和使用第三方O/R工具,如hibernateibatis等,JDBCJava访问数据库的基石,其他技术都是对JDBC的封装。

目前有四种可供使用的JDBC驱动程序,JDBC-ODBC桥、部分本地API部分Java的驱动程序、JDBC网络纯Java驱动程序、本地协议的纯java驱动程序,这四种中,本地协议的纯java驱动程序是最成熟的JDBC驱动程序,不但无需再使用者计算机上安装额外驱动,也不需要在服务器端安装任何中介程序,所有的存取操作,都直接由驱动程序完成。

开发的基本步骤

1、注册驱动

2、打开连接

3、准备请求

4、执行请求

5、处理结果

6、释放资源

注册驱动:

今天介绍了三种装载驱动程序的方法:

       (1) java.sql.Driver driver = new com.mysql.jdbc.Driver();

       (2) DriverManager.registerDriver(new com.mysql.jdbc.Driver());

       (3) Class.forName("com.mysql.jdbc.Driver");

一般使用第三种方法来装载驱动建立连接,因为Driver类中都包含静态代码块,在静态代码块中,会调用DriverManager.registerDriver() 方法来注册自身的一个实例

 

打开连接:

接口Connection

表示与特定数据库的连接(会话)。用来表示数据库连接的对象,对数据库的一切操作都是在这个连接的基础上进行的。

Connection conn = DriverManager.getConnection(url, username, password);

其中url=主协议:子协议://要连接的数据库地址:端口号/数据库名称

 

准备请求:

对数据库的请求就是发送SQL语句给数据库。

Statement接口

作用:用于执行静态SQL 语句并返回它所生成结果的对象。用于在已经建立的连接的基础上向数据库发送SQL语句的对象。包括执行SQL语句和获取返回结果的方法。一般来说,不太推荐在select后面使用*,因为效率比较低。

使用Connection接口中的createStatement方法,获取Statement接口对象

conn = conn.createStatement();

 

执行请求(获取结果):

ResultSet接口

表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。

Statement接口执行SQL语句读写数据的方法:executeQueryexecuteUpdate

查询数据(读数据,取数据):executeQuery方法用于产生单个结果集的SQL语句,如SELECT语句

更改数据(写数据,存数据):executeUpdate方法用于执行INSERT UPDATEDELETEDDL(数据定义语言)语句。executeUpdate 的返回值是一个整数,表示它执行的SQL语句所影响的数据库中的表的行数(更新计数)。

 

处理结果:

ResultSet接口

表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。可以看作是“内存”的一张二维表。

处理ResultSet中数据

定位行

ResultSet对象使用光标指向当前数据行。开始时光标被置于第一行之前(不是在处于

第一行)。

定位列

借助列名或者列的编号(编号是从1开始),列的顺序取决于select 后面的字段的顺序。

取值:(从数据库中找到对应的值)

提供了一套 get 方法对已经定位的数据进行访问。

getXXX(列号,列的数据类型)

 

释放资源:

资源包括:ResultSet,Statement,Connnection

使用完后立即释放资源是一个好习惯,可避免对数据库资源的占用。 不等待该对象自动关闭时释放资源。注意关闭顺序是从内到外,ResultSet-Statement-Connnection.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值