刚发现有这个功能,原来一直在琢磨hibernate怎么实现而且防止并发的,原来是我土了……
//mysql
- CREATE TABLE foo(id INT NOT NULL AUTO_INCREMENT, name VARCHAR(16), PRIMARY KEY(id));
//java
- String sql = "INSERT INTO foo(name) VALUES(?)"
- PreparedStatement st = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
- st.setString(1, "bar");
- int row = st.executeUpdate();
- ResultSet rs = st.getGeneratedKeys();
- if(rs.next())
- int generatedKey = rs.getInt(1); //只读第一列^_^
|