JDBC、工具类DBUtils

64 阅读2分钟

一、JDBC(Java Database Connectivity)

JDBC 是 Java 编程语言中用于访问关系型数据库的标准 API。它为 Java 应用程序提供了一个通用的接口,用于连接到数据库、执行 SQL 语句以及处理结果。通过 JDBC,Java 开发人员可以轻松地与各种关系型数据库进行交互,包括 MySQL、Oracle、SQL Server 等。

JDBC 连接

要使用 JDBC 连接到数据库,需要以下步骤:

  1. 加载 JDBC 驱动程序:使用 Class.forName() 方法加载与目标数据库兼容的 JDBC 驱动程序。例如,对于 MySQL 数据库,可以加载 MySQL Connector/J 驱动程序。
  2. 建立连接:使用 DriverManager.getConnection() 方法建立到数据库的连接。需要提供连接字符串、用户名和密码。连接字符串通常包含数据库的 URL、驱动程序类名和属性等信息。
  3. 创建 Statement 或 PreparedStatement:通过连接对象创建 Statement 或 PreparedStatement 对象,用于执行 SQL 语句。Statement 用于执行静态 SQL 语句,而 PreparedStatement 用于执行参数化 SQL 语句。
  4. 执行查询:使用 Statement 或 PreparedStatement 的 executeQuery() 方法执行 SQL 查询语句,返回结果集(ResultSet)。
  5. 处理结果集:使用 ResultSet 的方法遍历结果集,并获取数据。可以通过列名或索引访问结果集中的数据。
  6. 关闭连接:完成查询操作后,需要关闭 ResultSet、Statement 和连接对象,释放资源。

JDBC 示例代码

以下是一个简单的 JDBC 示例代码,用于连接到 MySQL 数据库并执行查询:

java复制代码
	import java.sql.Connection;  

	import java.sql.DriverManager;  

	import java.sql.ResultSet;  

	import java.sql.SQLException;  

	import java.sql.Statement;  

	  

	public class JdbcExample {  

	    public static void main(String[] args) {  

	        String url = "jdbc:mysql://localhost:3306/mydatabase";  

	        String username = "root";  

	        String password = "password";  

	        String query = "SELECT * FROM mytable";  

	          

	        try {  

	            // Load the JDBC driver  

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

	              

	            // Establish the connection  

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

	              

	            // Create a statement or prepared statement for executing SQL queries  

	            Statement statement = connection.createStatement();  

	            ResultSet resultSet = statement.executeQuery(query);  

	              

	            // Process the result set and display the data  

	            while (resultSet.next()) {  

	                System.out.println(resultSet.getString("column1") + ", " + resultSet.getString("column2"));  

	            }  

	              

	            // Close the result set, statement, and connection objects  

	            resultSet.close();  

	            statement.close();  

	            connection.close();  

	        } catch (ClassNotFoundException e) {  

	            e.printStackTrace();  

	        } catch (SQLException e) {  

	            e.printStackTrace();  

	        }  

	    }  

	}