Java增删改查功能
时间: 2023-07-19 13:05:00 浏览: 98
Java中的增删改查功能通常使用数据库操作。以下是一个使用JDBC连接MySQL数据库的示例代码:
```java
import java.sql.*;
public class CRUDExample {
// JDBC连接字符串和数据库登录信息
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/mydb";
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
// 注册JDBC驱动程序
Class.forName(JDBC_DRIVER);
// 打开一个连接
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行查询
System.out.println("Creating statement...");
stmt = conn.createStatement();
String sql;
sql = "SELECT id, name, age FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 处理结果集
while (rs.next()) {
// 通过列名获取数据
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
// 输出数据
System.out.print("ID: " + id);
System.out.print(", Name: " + name);
System.out.println(", Age: " + age);
}
// 插入数据
System.out.println("Inserting data...");
sql = "INSERT INTO users (name, age) VALUES ('Tom', 20)";
stmt.executeUpdate(sql);
// 更新数据
System.out.println("Updating data...");
sql = "UPDATE users SET age=21 WHERE name='Tom'";
stmt.executeUpdate(sql);
// 删除数据
System.out.println("Deleting data...");
sql = "DELETE FROM users WHERE name='Tom'";
stmt.executeUpdate(sql);
// 清理环境
rs.close();
stmt.close();
conn.close();
} catch (SQLException se) {
// 处理JDBC错误
se.printStackTrace();
} catch (Exception e) {
// 处理Class.forName错误
e.printStackTrace();
} finally {
// 关闭资源
try {
if (stmt != null) stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}
```
上述代码中,使用JDBC连接MySQL数据库,实现了查询、插入、更新、删除等操作。其中:
- `Class.forName(JDBC_DRIVER)` 注册JDBC驱动程序。
- `DriverManager.getConnection(DB_URL, USER, PASS)` 建立数据库连接。
- `stmt.executeQuery(sql)` 执行查询。
- `stmt.executeUpdate(sql)` 执行插入、更新或删除。
- `rs.getInt("id")`、`rs.getString("name")`等获取结果集中的数据。
- `rs.close()`、`stmt.close()`和`conn.close()`分别关闭结果集、语句和连接。
阅读全文