异常控制:请编写一段代码处理SQLException的异常,并是使用try catch finally 三个关键字。
时间: 2024-12-19 16:25:07 浏览: 8
在Java中,异常控制是非常重要的一部分,特别是当涉及到数据库操作时,像`SQLException`这样的错误很常见。下面是一个简单的示例,展示了如何使用`try-catch-finally`结构来处理`SQLException`:
```java
import java.sql.*;
public class ExceptionHandlingExample {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "username";
String password = "password";
try {
// 创建连接
Connection conn = DriverManager.getConnection(url, username, password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM my_table");
// 这里假设查询会抛出SQLException
while (rs.next()) {
System.out.println(rs.getString("column_name"));
}
} catch (SQLException e) {
// 捕获SQLException并打印错误信息
e.printStackTrace();
System.out.println("An error occurred while executing the SQL query.");
} finally {
// 关闭资源,无论是否发生异常都要做这一步
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException se) {
// 如果在finally块中还有SQL操作,可能会捕获到这个异常
se.printStackTrace();
}
}
}
}
```
在这个例子中,如果在执行SQL查询时出现异常,程序将不会停止运行,而是会捕获`SQLException`并在catch块中打印错误信息。最后,无论是否发生异常,`finally`块都会确保关闭数据库连接、结果集和语句,以释放系统资源。
阅读全文