概述

  • JDBC概念

JDBC (Java DataBase Connectivity) 就是使用Java语言操作关系型数据库的一套API
Java语言操作关系型数据库
目标:同一套Java代码操作不同的关系型数据库,而此时sun公司就指定了一套标准接口(JDBC),JDBC中定义了所有操作关系型数据库的规则。接口是无法直接使用的,我们需要使用接口的实现类,而这套实现类(称之为:驱动)就由各自的数据库厂商给出。

  • JDBC本质

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

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

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

  • JDBC优势

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

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

流程

流程

  • 编写Java代码
  • Java代码将SQL发送到MySQL服务端
  • MySQL服务端接收到SQL语句并执行该SQL语句
  • 将SQL语句执行的结果返回给Java代码

详细操作

  • 创建新的空的项目

选择Empty Project
然后自定义项目 name 和 location

  • 对项目进行设置,JDK版本、编译版本

配置项目
当然,如果创建的不是空项目,也就没有这一步。

  • 创建模块

和创建 project 基本一致,同样指定模块的名称及位置即可。

  • 导入驱动包

将mysql的驱动包放在模块下的lib目录(需手动创建,命名随意)下,并将该jar包添加为库文件(下一步)。驱动包资源在文章末尾。
图示

  • 右击驱动包,在Add as Library(添加为库文件)的地方,有如下三个选项
  • Global Library : 全局有效
  • Project Library : 项目有效
  • Module Library : 模块有效

在本例中,我们只需在该模块下有效即可,选择:Module Library

  • 在src下创建类,进行编码(详见代码注释)
package cn.codetruth;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

/**
 * JDBC
 */
public class JDBCDemo {
    public static void main(String[] args) throws Exception {
        // 注册驱动
        Class.forName("com.mysql.jdbc.Driver");

        // 获取连接
        String url = "jdbc:mysql://127.0.0.1:3306/mydatabase";
        String username = "root";
        String password = "****";
        Connection con = DriverManager.getConnection(url,username,password);

        // 定义sql
        String sql = "UPDATE tb_user set password = '456' where id = 2";

        // 获取指向sql的对象statement
        Statement sta = con.createStatement();

        // 执行sql
        int count = sta.executeUpdate(sql);  // 受影响的行数

        System.out.println(count);

        // 释放资源
        sta.close();    // 先释放指向SQL的对象
        con.close();    // 再释放SQL连接
    }
}
  • 运行结果
    可以看到,与UPDATE tb_user set password = '456' where id = 2效果一致。表 tb_user 中 id 为 2 的 password 已经更改为456

mysql
资源mysql-connector-java-5.1.48.jar
代码中出现的API详解参照:

最后修改:2022 年 01 月 04 日 11 : 51 AM
如果我的文章对你有用,请随意赞赏