• JDBC连接Mysql数据库


    在框架盛行的年代,传统的jdbc连接数据库相信很多人已经忘记了,或许也只有学校会用到了,今天就带大家来复习一下,同时给新学习的小伙伴一个参考,如有不对望指正。

    1、什么是JDBC

    首先,来解释一下什么是JDBC,Java DataBase Connectivity,它是Java数据库连接 的缩写,它提供了一套流程用于我们在Java代码中去操作我们的数据库。

    其次,在JDBC中主要用到3个对象
    Connection对象:用于获取对于数据库的连接
    Statement对象:建立了连接之后,需要有操作SQL的对象
    ResultSet对象:操作完SQL要有能够接受结果的对象

    2、为什么要使用JDBC呢

    相信有过工作或者实习的经验的小伙伴或有所体会,在工作的项目中使用框架来操作数据库(例如mybatis框架),写SQL都是非常方便的,但有时候领导让你写个小工具或者小脚本,难道我们还要把整个框架搭建起,建mapper文件再建xml文件,再去实现我们的功能吗?

    当然了那并不是一个好的方法,所以我们再识JDBC。

    3、如何使用JDBC

    今天就带大家实战一下,在Java中如何使用JDBC来进行MySQL数据库的增删改查,源码文末下载

    MySQL版本:5.7
    驱动版本:mysql-connector-java-5.1.48

    注意:MySQL8版本的不适用,需要下载匹配的的驱动版本

    3.1 创建一个学生表

    CREATE TABLE student(
        `id` INT ,
        `name` VARCHAR(40),
    	`age` int
    );
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在Navicat中执行以上SQL创建一个空的学生表

    file

    3.2 通过JDBC来操作学生表

    package com.it1997;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class MysqlTest {
    	public static void main(String[] args) throws ClassNotFoundException, SQLException {
            // 1、加载驱动(mysql 8 以上换成com.mysql.cj.jdbc.Driver) ClassNotFoundException,
            Class.forName("com.mysql.jdbc.Driver");
    
            // 2、数据库连接信息
            String url = "jdbc:mysql://localhost:3306/library?useUnicode=true&useCharacter=utf8&useSSL=true";
            String username = "root";//数据库用户名
            String password = "123456";//数据库密码
     
            // 3、获取数据库连接对象  只有连接上数据库才可以操作数据库
            Connection connection = DriverManager.getConnection(url, username, password);
     
            // 4、从连接对象中获取执行sql的statement对象
            Statement statement = connection.createStatement();
            
            // 5、通过statement对象来执行SQL语句
            String sql = "select * from student"; //sql查询语句
            String insertSql = "insert into student values(1,'小陈没烦恼',20);";
            String updateSql = "update student set age = 18 where id = 1";
            // 6、通过statement的execute方法执行SQL 可以执行增删改查的所有SQL 返回一个布尔值
            boolean iFlag = statement.execute(insertSql);
            boolean uFlag = statement.execute(updateSql); // 将年龄修改为18
    
            // 7、通过resultSet对象来接收查询的结果
            ResultSet resultSet = statement.executeQuery(sql);
            while (resultSet.next()){
                System.out.println("id="+resultSet.getObject("id"));
                System.out.println("name="+resultSet.getObject("name"));
                System.out.println("age="+resultSet.getObject("age"));
               
            } // 输出结果
     
            // 释放连接 注意释放顺序,先创建的最后释放
            resultSet.close();
            statement.close();
            connection.close();
        }
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    3.3运行结果

    file
    file

    3.4 下载链接

    链接:https://pan.baidu.com/s/1Ap14WFFGN4aVc36UhDEgVg
    提取码:1997

  • 相关阅读:
    六、【React基础】组件实例三大核心属性之三 refs + 事件处理
    网安周报|Chaes恶意软件的新Python变种针对银行和物流行业
    在Kafka生产实践中又出问题了
    教育机构招生话术
    澳利率攀升,加息步伐将在某个时候放缓
    Spring Kafka生产者实现
    JAVA练习题36:打乱一维数组中的数据,并按照4个一组的方式添加到二维数组中
    openGauss 6.0高可用测试,系统上线前很关键
    Java手写背包问题算法应用拓展案例
    可编程计数器/定时器8253
  • 原文地址:https://blog.csdn.net/qq_41772384/article/details/125457124