JDBC学习笔记(1)--本质与开发步骤

学习的是动力节点老杜出的JDBC教程,该教程对JDBC未过多深入,只是讲了基础的使用。

目录

JDBC本质:

JDBC开发步骤:

注册驱动:

方式一:

方式二:

获取数据库连接:

获取数据库操作对象:

执行sql语句:

处理查询结果集:

 释放资源:


JDBC本质:

JDBC(JAVA Database Conectivity)是SUN公司指定的一套java与数据库连接的接口。而诸如MySQL,Oracle等厂家实现了这些接口。作为编程人员,我们使用JDBC接口里提供的方法即可,不用关注底层实现细节。这也是最能体现接口与实现类作用的应用之一。

JDBC开发步骤:

注册驱动(选用哪个公司的数据库进行连接);

获取数据库连接(提供url,user,password等信息);

获取数据库操作对象;

执行sql语句;

处理查询结果集;

释放连接。

注册驱动:

方式一:

Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);

注意,这里声明的是一个接口,即jdbc自己写的Driver,而实际生成的是一个实现类,即mysql公司写的实现类com.mysql.jdbc.Driver。DriverManager同样是jdbc提供的类。

事实上,观察Driver类的代码可以发现,里面已经提供了静态代码块来注册驱动,所以我们没有必要自己注册驱动,只用执行Driver的静态代码块即可。而类在初始化的时候,静态代码块会执行,因此,只需初始化类即可。

方式二:

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

forName即可初始化给定的类。(原理是什么呢?反射?)

获取数据库连接:

Connection conn = driver.getConnection(url, user, password)

url:统一资源定位符,包含协议+IP地址+端口号+资源名+可选参数

如果连接本机的mysql数据库,则url地址为:

jdbc:mysql://127.0.0.1:3306/sql_store?serverTimezone=UTC

获取数据库操作对象:

Statement stmt = conn.createStatement();

通过一个连接Connection是可以创建多个Statement的

执行sql语句:

int count = stmt.executeUpdate(sql);
ResultSet rs = stmt.executeQuery(sql);

executeUpdate执行DML(数据操控语言,增删改)语句,count是该sql语句影响的数据库的记录的条数;

executeQuery执行查询语句,可配合下一步处理查询结果集使用。

处理查询结果集:

结果集的处理需要用到遍历的方法,遍历结果集的原理如下:

使用ResultSet类的next方法,结合循环,可以遍历处理结果集:

while(rs.next()){
    //获得第一行的第一项内容
    String ** = rs.getString(1);
    //也可以根据列名取内容,注意填入的是查询的名称,即若有别名要填别名
}

 释放资源:

conn.close();
stmt.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值