JDBC(Java Database Connectivity)是用于在Java程序中執行SQL語句的API。執行SQL語句的步驟如下:
1. 加載驅動程序:使用`Class.forName()`方法加載適當的JDBC驅動程序。根據不同的數據庫,需要加載相應的驅動程序。
2. 建立連接:使用`DriverManager.getConnection()`方法建立與數據庫的連接。傳遞數據庫的URL、用戶名和密碼作為參數。
3. 創建Statement對象:使用`Connection.createStatement()`方法創建一個`Statement`對象,用于執行SQL語句。
4. 執行SQL語句:使用`Statement.execute()`方法執行SQL語句。可以使用不同的`execute`方法根據需要執行查詢、插入、更新或刪除等不同的操作。
5. 處理結果:對于查詢語句,可以使用`ResultSet`對象來處理查詢結果。可以使用`ResultSet.next()`方法遍歷結果集,并使用`ResultSet`的其他方法獲取結果集中的具體數據。
6. 釋放資源:關閉`ResultSet`、`Statement`和`Connection`對象,釋放數據庫資源。
以下是一個使用JDBC執行SQL查詢語句的示例代碼:
```java
import java.sql.*;
public class JdbcExample {
public static void main(String[] args) {
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
// 加載驅動程序
Class.forName("com.mysql.jdbc.Driver");
// 建立連接
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password");
// 創建Statement對象
statement = connection.createStatement();
// 執行SQL查詢語句
resultSet = statement.executeQuery("SELECT * FROM mytable");
// 處理查詢結果
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
System.out.println("id: " + id + ", name: " + name);
}
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
try {
// 釋放資源
if (resultSet != null) resultSet.close();
if (statement != null) statement.close();
if (connection != null) connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```