一、JDBC 流程
// 1. 加载驱动(新版本可省) 2. 连接 3. 语句 4. 结果 5. 关闭
try (Connection c = DriverManager.getConnection(url, user, pwd);
Statement st = c.createStatement();
ResultSet rs = st.executeQuery("SELECT id,name FROM user")) {
while (rs.next()) {
System.out.println(rs.getInt("id") + rs.getString("name"));
}
}
二、PreparedStatement(重要)
用 ? 占位、预编译,既防 SQL 注入 又提性能:
PreparedStatement ps = c.prepareStatement("SELECT * FROM user WHERE id = ?");
ps.setInt(1, 10);
ResultSet rs = ps.executeQuery();
三、事务
c.setAutoCommit(false) → 多次操作 → c.commit();异常 c.rollback()。注意连接用连接池(HikariCP)而非每次新建。