Java使用JDBC操作MySQL的基本实现

        首先我们需要了解JDBC是什么。JDBC(Java DataBase Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它是一组用Java语言编写的类和接口组成。JDBC 提供了一个种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC 也是个商标名。

JDBC相关类和接口

(1)驱动管理类:DriverManager

(2)连接接口:Connection

(3)语句对象接口:Statement

(4)结果集接口:ResultSet

 

JDBC的工作原理

(1)注册驱动(加载驱动):主要告诉 JVM 我们的程序将要使用哪一种数据库

(2)获取连接:使用 JDBC 中的类,获得数据库的连接对象 Connection

(3)获得语句执行平台:通过 Connection 可以获取执行者对象,Statement、PreparedStatement.

(4)执行 SQL 语句:使用执行者对象,向数据库中执行 SQL 语句,然后可以得到对应的接口,有单个结果,也可能有结果集 ResultSet。

(5)处理结果

(6)释放对象:释放顺序,从下往上依次释放。

注册驱动两种方式的区别

通过发射加载驱动-------Class.forName("com.mysql.cj.jdbc.Driver");

底层会注册两次---------DriverManager.registerDriver(new com.mysql.jdbc.Driver());

JDBC的简单使用

这个案例是我们上课时创建的一个学生表中的数据

public class TestJdbc01 {

public static void main(String[] args) throws SQLException, ClassNotFoundException {

// 1.注册驱动

// 这里,其实是用到了反射的原理,通过给定类的名字,让程序自动去找对应的类

// 然后执行得到对应实例

Class.forName("com.mysql.cj.jdbc.Driver");

// 使用注册方法的时候,底层会注册两次,不推荐使用

// DriverManager.registerDriver(new com.mysql.jdbc.Driver());  

// 2.获取连接:数据库地址、用户名、密码 Connection

String url = "jdbc:mysql://localhost:3306/库名?serverTimezone=GMT";

String user = "账户名";

String password = "密码";

Connection connection = DriverManager.getConnection(url, user, password);

// 3.获取执行者对象

Statement statement = connection.createStatement();

// 4.准备 SQL 语句

String sql = "select * from student";

// 5.执行 SQL 语句

ResultSet resultSet = statement.executeQuery(sql);

// 6.处理结果

while (resultSet.next()) {

int sid = resultSet.getInt("sid");

String sname = resultSet.getString("sname");

String birthday = resultSet.getString("birthday");

String ssex = resultSet.getString("ssex");

int classid = resultSet.getInt("classid");

System.out.println(sid + "--" + sname + "--" + birthday+ "--" + ssex+ "--" + classid);

}

// 7.关闭资源

resultSet.close();

statement.close();

connection.close();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值