Java JDBC使用入门讲解
什么是 JDBC
Java 数据库连接(Java Database Connectivity,简称为 JDBC)是 Java 语言中用来规范客户端程序如何访问数据库的 API。
JDBC 提供了一组用于执行 SQL 语句的方法和获取执行结果的方法,包括对数据库连接、事务处理、元数据操作等内容的支持,为 Java 开发人员提供了便捷、安全和可靠的数据库访问方式。
JDBC 开发步骤
以下是使用 JDBC 连接数据库的一般步骤:
- 加载驱动程序:通过 Class.forName() 方法加载数据库驱动程序,比如MySQL官方提供的驱动是 com.mysql.jdbc.Driver。
- 建立数据库连接:使用驱动管理器 DriverManager.getConnection() 方法建立数据库连接。
- 创建 Statement 对象:通过 Connection 对象创建一个 Statement 对象来执行 SQL 语句。
- 执行 SQL 语句:通过 Statement 对象执行 SQL 语句,并获取返回结果。
- 处理结果集:对 SQL 语句返回的结果集进行处理,比如将结果集遍历并输出到控制台等。
- 释放资源:关闭结果集、Statement 对象和 Connection 对象等资源。
示例一:连接 MySQL 数据库
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "root", "mysql");
// 执行 SQL 语句
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM student");
// 处理结果集
while (resultSet.next()) {
String name = resultSet.getString("name");
int age = resultSet.getInt("age");
System.out.println(name + " - " + age);
}
// 释放资源
resultSet.close();
statement.close();
connection.close();
在这个示例中,我们先通过 Class.forName()
启动 MySQL 数据库驱动,然后调用 DriverManager.getConnection()
方法建立与 MySQL 数据库的连接。接着创建 Statement 对象并执行一条查询语句,并通过遍历结果集将查询结果输出到控制台。最后在执行完毕后关闭连接、Statement 对象和结果集等资源。
示例二:使用 PreparedStatement 执行更新操作
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", "root", "mysql");
String sql = "UPDATE student SET age = ? WHERE id = ?";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setInt(1, 20);
preparedStatement.setInt(2, 1);
int updateCount = preparedStatement.executeUpdate();
System.out.println("受影响的行数:" + updateCount);
preparedStatement.close();
connection.close();
在这个示例中,我们首先通过 DriverManager.getConnection()
方法建立与 MySQL 数据库的连接,其后准备一条更新语句,在创建 PreparedStatement 对象的同时设置两个参数的值,然后调用 executeUpdate()
方法将更新语句发送给数据库并执行,最后输出更新的数据行数并释放资源等。
通过这个示例我们可以看到,使用 PreparedStatement 对象可以有效地避免 SQL 注入攻击,提高应用程序的安全性。同时该对象的可重用性也可以帮助我们减少所需创建的 Statement 对象个数,缩短连接数据库的时间,提高应用程序的性能等。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java JDBC使用入门讲解 - Python技术站