概念:
Java database Connectivity (Java数据库连接,java语言操作数据库)
本质
其实官方定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar 包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
JDBC定义了操作所有关系型数据库的规则(接口)
快速入门
- 导入驱动jar包
- 注册驱动
- 获取数据库连接对象
- 定义SQL
- 获取执行SQL语句的对象statement
- 执行SQL 返回结果
- 处理结果
- 释放资源
详解各个对象
DriverManager:驱动管理对象
注册驱动:告诉程序使用哪个驱动jar
注意:mysql5之后的驱动jar包可以省略注册驱动的步骤
获取数据库连接
方法:static Connection getConnection(String url, String user, String password)
参数:
Url :指定的连接路径
语法:jdbc:mysql://ip地址(域名):端口号/数据库名称
(本机可简写:jdbc:mysql:///数据库名称)
User:用户名
Password: 密码
Connection:数据库连接对象
功能:
获取执行SQL的对象
Statement CreateStatement()
preparedStatement preparedStatement(String sql)
- 管理事务
- 开启事务
- 提交事务
- 回滚事务
Statement:执行SQL的对象
执行sql
Boolean
int executeUpdate(String sql);执行DML(insert、update、delete)语句
ResultSet executeQuery(String sql);执行DDL(select)语句
Resultset:结果集对象
boolean next();//游标向下移动一行,判断当前行是否是最后一行末尾(是否有数据),如果是,则返回false,如果不是则返回true
getXxx(参数)//获取数据
参数:
int:代表猎德编号,从1开始 如: getString(1)
String:代表列名称 如:getDouble(“balance”)
使用步骤:
- 游标向下移动一行
- 判断是否有数据
- 获取数据
代码练习
//循环判断游标是否是最后一行末尾
while(rs.next()){
//获取数据
int id = rs.getInt(1);
String name = rs.getString("name");
double balance = rs.getDouble(3);
System.out.println(id+"---"+name+"---"+balance);
}