【Java与数据库】1、JDBC基础


JDBC入门

什么是JDBC

 JDBC,Java DataBase Connectivity,是 Java 访问数据库的标准规范,是规范定义接口,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以只需要会调用 JDBC 接口中的方法即可,数据库驱动,即驱动类由数据库厂商提供。

JDBC的优势

  • 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。
  • 使用同⼀套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库。

核心包和API

使用JDBC开发使用到的包:
在这里插入图片描述
JDBC的核⼼API:
在这里插入图片描述

导包与加载注册驱动

导包:
在这里插入图片描述
在工程下新建一个lib文件夹。
在这里插入图片描述
复制粘贴。

在这里插入图片描述
选择加入库。
在这里插入图片描述
在Modules中勾选并Apply。

在这里插入图片描述

成功。
在这里插入图片描述
加载与注册驱动:

加载和注册驱动的方法 描述

Class.forName(数据驱动实现类)

加载和注册数据库驱动,数据库驱动由 MySQL 厂商"com.mysql.jdbc.Driver"

public class Demo1 {
   
 public static void main(String[] args) throws ClassNotFoundException {
   
 //抛出类找不到的异常,注册数据库驱动
 Class.forName("com.mysql.jdbc.Driver");
 }
}

DriverManager类

DriverManager类的作用

  • 管理和注册驱动
  • 创建数据库的连接

方法、参数及格式

类中的方法

在这里插入图片描述

使用JDBC连接数据库的参数

在这里插入图片描述

连接数据库的URL地址格式

  • 协议名:子协议://服务器名或 IP 地址:端口号/数据库名?参数=参数值

MySQL中的写法

在这里插入图片描述

  • 前提:必须是本地服务器,端口号是 3306
  • jdbc:mysql:///数据库名

 如果数据库出现乱码,可以指定参数: ?characterEncoding=utf8 ,表示让数据库以 UTF-8 编码来处理数据。

jdbc:mysql://localhost:3306/数据库?characterEncoding=utf8

Connection接口

作用

 Connection 接口,具体的实现类由数据库的厂商实现,代表⼀个连接对象。

方法

Connection 接口中的方法 描述
Statement createStatement() 创建⼀条 SQL 语句对象

Statement接口

连接数据库的步骤

  1. 注册和加载驱动(可以省略)
  2. 获取连接
  3. Connection 获取 Statement 对象
  4. 使用 Statement 对象执行 SQL 语句
  5. 返回结果集
  6. 释放资源

作用

 代表⼀条语句对象,用于发送 SQL 语句给服务器,用于执行静态 SQL 语句并返回它所生成结果的对象。

方法

Statement 接口中的方法 描述
int executeUpdate(String sql)

用于发送 DML 语句,增删改的操作,insert、
update、delete
参数:SQL 语句
返回值:返回对数据库影响的行数

ResultSet
executeQuery(String sql)

用于发送 DQL 语句,执行查询的操作 select
参数:SQL 语句
返回值:查询的结果集

释放资源

  1. 需要释放的对象:ResultSet 结果集,Statement 语句,Connection 连接。
  2. 释放原则:先开的后关,后开的先关。
  3. ResultSet → Statement → Connection
  4. 放在finally代码块中。

执行DDL操作

public static void main(String[] args
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值