JDBC(简介、入门与IDEA中导入MySQL的驱动)

(建议学完 MySQL 的基础部分)

JDBC------简而言之:用 Java 语言操作数据库。

Java DataBase Connectivity(Java 语言连接数据库)


目录

一、引言

(1)基本介绍

[(2)JDBC 简介](#(2)JDBC 简介)

[1、JDBC 概念](#1、JDBC 概念)

2、详细介绍

[3、JDBC 的本质](#3、JDBC 的本质)

[二、JDBC 快速入门](#二、JDBC 快速入门)

[(1)用 Java 代码操作对应的 MySQL 数据库的基本流程](#(1)用 Java 代码操作对应的 MySQL 数据库的基本流程)

(2)基本步骤

[0、创建工程,并导入对应的驱动 " jar 包 "。](#0、创建工程,并导入对应的驱动 " jar 包 "。)

1、注册导入的驱动。

2、获取连接。

[3、定义 SQL 语句。](#3、定义 SQL 语句。)

[4、获取执行的 SQL 对象。](#4、获取执行的 SQL 对象。)

[5、执行 SQL。](#5、执行 SQL。)

6、处理返回结果。

7、释放资源

[(3)进入 IDEA 进行实操(准备阶段)](#(3)进入 IDEA 进行实操(准备阶段))

1、首先先创建一个新的空工程。

2、然后再给这个空的工程进行一些配置。

​编辑

[3、接着创建一个新的模块(语言选 JAVA 的)](#3、接着创建一个新的模块(语言选 JAVA 的))

[4、创建完模块之后,要导入 MySQL 的驱动 " jar 包"。](#4、创建完模块之后,要导入 MySQL 的驱动 " jar 包"。)

5、开始创建一个类

[(4)进入 IDEA 进行实操(开始代码编写阶段)](#(4)进入 IDEA 进行实操(开始代码编写阶段))

1、该类的全部代码(代码注释解释了很多,流程与上面同步)

2、注意


一、引言

(1)基本介绍

1、JDBC 就是使用 Java 语言操作关系型数据库的一套 API

以下就是 JDBC的一个示例代码:

注意:(现在这部分代码我们大致可以认识一些东西)

1、用户名、密码。

2、基本的 SQL 语句。(上面的 UPDATE修改语句)通过这串代码,将SQL语句发送给MySQL 数据库,然后 MySQL 数据库执行SQL,就可以看到数据表里面的修改。

(2)JDBC 简介
1、JDBC 概念
  • JDBC 就是使用 Java 语言操作关系型数据库的一套 API
  • 全称:( Java DataBase Connectivity ) Java数据库连接
2、详细介绍

当我们写 Java代码, 就要涉及到操作关系型数据库。

一般的情况同一套Java代码,不能去操作不同的关系型数据库。

1、但是为了实现这样的需求,就诞生了一个 JDBC。它定义了一套操作所有的关系数据库的规则,就可以实现同一套 Java 代码操作不同的数据库。(其实就是定义了一套接口)

2、然而,JDBC它只是定义了接口,没有实现类。实现类是各个数据库去给自己定义的。

3、如果以后听到需要弄一个 MySQL 的驱动,其实就是搞一个 MySQL 对应 JDBC的实现类。搞一个 " jar 包 " ,它里面有很多的实现类,拿过来直接用就行。

3、JDBC 的本质

1、官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。

2、各个数据库厂商去实现这套接口,提供数据库驱动jar包。

3、我们可以使用这套接口 ( JDBC ) 编程,真正执行的代码是驱动 jar 包中的实现类。

4、这样做的好处 就是可以:

同一套代码,可以操作不同的关系型数据库。

  • 各数据库厂商使用相同的接口,Java代码不需要针对不同数据库分别开发。

(可以做到数据库灵活的切换)

  • 可随时替换底层数据库,访问数据库的Java代码基本不变。

(基于接口编程)所以就要把对应的关系数据库的对应的 "jar包" 导入到工程里去就好了。

二、JDBC 快速入门

(1)用 Java 代码操作对应的 MySQL 数据库的基本流程
(2)基本步骤
0、创建工程,并导入对应的驱动 " jar 包 "。
1、注册导入的驱动。
  • Class.forName("com.mysql.jdbc.Driver");

Class.forName...(将一个类加载到内存)

2、获取连接。

为了以后的通过 Java 代码发送 SQL 语句给 MySQL 服务器,所以得之间连接起来。

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

(连接对象:Connection)

3、定义 SQL 语句。
  • String sql = " update... " ;

(要求把 SQL语句编写好。)

4、获取执行的 SQL 对象。
  • Statement stmtI conn.createStatement();

(执行 SQL 语句之前,需要获取 SQL对象。)

5、执行 SQL。
  • stmt.executeUpdate(sql);

(其实就是通过前面获取到的 SQL 对象,把这个 SQL语句发送给数据库,让这个数据库去执行相关的数据操作)

6、处理返回结果。

Java 代码获得 MySQL的返回结果,再去进行处理。)

7、释放资源

(整个过程做完之后,就要释放调资源。)

(3)进入 IDEA 进行实操(准备阶段)
1、首先先创建一个新的空工程。
2、然后再给这个空的工程进行一些配置。

(这边建议 JDK 配置成1.8 的,那么编译的版本也要调成 8 版本)

  • 如果是老版的 IDEA:
  • 现在作者本人的是新版的
3、接着创建一个新的模块(语言选 JAVA 的)

(项目模块的工程名:jdbc-demo)

现在就是整个创建后的结构,这样就可以在里面写代码了。

4、创建完模块之后,要导入 MySQL 的驱动 " jar 包"。

(通常我们的 " jar 包" 会单独存放在一个目录下面 )

我们会在模块上去 new 一个 Directory (目录)。在这里面存放 " jar 包"。

我们可要去 MySQL 官网去寻找自己想要的 " jar 包"。

MySQL 下载对应 jar包的地址https://downloads.mysql.com/archives/c-j/

这里我为了自学的视频相对应,我选择下载的版本是:5.1.48

(下好之后把它复制放到之前创建的目录下:lib)

复制完之后,还没有成功。要让这个创建好的工程去识别这个" jar 包"。

首先先右键这个" jar 包"。(添加为库)


然后我们的驱动" jar 包"和工程都已经弄好了。

5、开始创建一个类

(在里面去完成之前的所有流程)

(4)进入 IDEA 进行实操(开始代码编写阶段)
1、该类的全部代码(代码注释解释了很多,流程与上面同步)
java 复制代码
package com.feisi.jdbc;

import com.mysql.jdbc.Driver;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
/**
 * @Title: JDBCDemo
 * @Author HeYouLong
 * @Package com.feisi.jdbc
 * @Date 2024/6/20 下午9:18
 * @description: JDBC入门
 */
public class JDBCDemo {

    public static void main(String[] args) throws Exception {  //因为后面会有很多个异常,直接抛出最大的

        //1、注册驱动
        Class.forName("com.mysql.jdbc.Driver");

        //记住固定写法
        //jdbc:mysql: 后面写 mysql对应的ip端口和数据库名词
        //127.0.0.1(localhost) mydb:所连接的数据库名称
        String url = "jdbc:mysql://127.0.0.1:3306/mydb";
        //将来写自己对应的就行
        String username = "root";
        String password = "1234";
        //2.获取连接 (这个类有一个静态方法)
        Connection conn = DriverManager.getConnection(url,username,password);

        //3.定义SQL语句
        //如:update ... set ... where ...
        String sql = "";

        //4.获取执行sql的对象Statement
        Statement stmt = conn.createStatement();

        //5.执行sql,方法参数传入sql语句就行了
        //这个方法返回的是 数据库表中受影响的行数
        int count=stmt.executeUpdate(sql);

        //6.处理结果
        System.out.println(count);

        //7.释放资源
        //这一块有两个地方需要释放:conn 与 stmt
        //释放顺序是:先开后放
        stmt.close();
        conn.close();

    }
}
2、注意

1、IDEA 有提示,很方便。

2、这个方法返回的是一个连接对象


这篇博客的内容就到这里。

相关推荐
企鹅侠客4 分钟前
ETCD调优
数据库·etcd
Json_1817901448011 分钟前
电商拍立淘按图搜索API接口系列,文档说明参考
前端·数据库
煎饼小狗22 分钟前
Redis五大基本类型——Zset有序集合命令详解(命令用法详解+思维导图详解)
数据库·redis·缓存
永乐春秋39 分钟前
WEB-通用漏洞&SQL注入&CTF&二次&堆叠&DNS带外
数据库·sql
打鱼又晒网1 小时前
【MySQL】数据库精细化讲解:内置函数知识穿透与深度学习解析
数据库·mysql
大白要努力!1 小时前
android 使用SQLiteOpenHelper 如何优化数据库的性能
android·数据库·oracle
tatasix2 小时前
MySQL UPDATE语句执行链路解析
数据库·mysql
南城花随雪。2 小时前
硬盘(HDD)与固态硬盘(SSD)详细解读
数据库
儿时可乖了2 小时前
使用 Java 操作 SQLite 数据库
java·数据库·sqlite
懒是一种态度2 小时前
Golang 调用 mongodb 的函数
数据库·mongodb·golang