JDBC对象解释

JDBC对象解释

1. DriverManager

// DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
 Class.forName("com.mysql.cj.jdbc.Driver");// 固定写法,加载驱动

 Connection connection = DriverManager.getConnection(url, username, password);
// connection  代表数据库
// 数据库设置自动提交
// 实际提交
// 事务回滚
connection.commit();
connection.rollback();
connection.setAutoCommit(true);
  • 这是完整的写法
// 1.加载驱动
DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
  • 这是简洁的写法(我们首推)
 Class.forName("com.mysql.cj.jdbc.Driver");// 固定写法

Class.forName是一个静态方法,可以用来加载类,使用该方法会执行方法里面静态代码块的内容(初始化)

这是Driver类的源码(里面主要是一个静态代码块):
在这里插入图片描述
这里不懂得请看 类加载的过程

2. URL和用户信息

  • url:
    String url="jdbc:mysql://localhost:3306/jdbcStudy?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=true";
    公式
MySQL默认端口号:3306
协议://主机地址:端口号/数据库名?参数1&参数2&参数3&参数4...
  • 用户信息:
String username="root";
String password="123456";

Statement,prepareStatement执行SQL的对象

 String sql="SELECT * FROM `users`;";// 编写SQL

statement.execute(sql);// 执行任何SQL,返回布尔值
statement.executeQuery(sql);// 执行查询操作,返回ResultSet
statement.executeUpdate(sql);// 更新,插入,删除。都是用这个,返回一个受影响的行数

ResultSet返回的结果集, 封装了我们全部的查询结果

获得指定的数据类型

ResultSet resultSet = statement.executeQuery(sql);//resultSet  封装了我们全部的查询结果

resultSet.getObject(); 在不知道类型的情况下使用
// 如果知道具体的类型就使用指定的类型
resultSet.getString();
resultSet.getInt();
......

遍历:

遍历指针

        resultSet.beforeFirst();// 移动到最前面
        resultSet.afterLast();// 移动到最后面
        resultSet.previous();// 移动到前一行
        resultSet.next();// 移动到下一个数据
        resultSet.absolute(row);// 移动到指定行

遍历

        while (resultSet.next()){
            System.out.println("id = "+resultSet.getObject("id"));
            System.out.println("NAME = "+resultSet.getObject("NAME"));
            System.out.println("PASSWORD = "+resultSet.getObject("PASSWORD"));
            System.out.println("email = "+resultSet.getObject("email"));
            System.out.println("birthday = "+resultSet.getObject("birthday"));
            System.out.println();
        }

在这里插入图片描述

释放资源

// 6.关闭数据库连接
resultSet.close();
statement.close();
connection.close();
// 耗资源,用完关掉

猜你喜欢

转载自blog.csdn.net/I_r_o_n_M_a_n/article/details/114363855