MySQL增加、删除、更改后返回自动生成的主键id的方法


JDBC原生增加、删除、更改MySQL数据后返回自动生成的主键id的方法_自动生成

JDBC原生增加、删除、更改MySQL数据后返回自动生成的主键id的方法_MySQL_02

举例:

/**
* 添加操作,并返回该操作记录自动生成的id
*
* @param p 个人信息实体
* @return 返回此记录自动生成的id
*/
public int addPerson(Person p) {
String sql = "INSERT INTO person(name,gender) VALUES(?,?)";
int id = 1;//存储此记录自动生成的id
Connection conn = null;
PreparedStatement pst = null;
ResultSet keys = null;
try {
conn = DBCPUtil.getCurrendThreadConnection();
//Statement.RETURN_GENERATED_KEYS 返回此记录自动生成的id
pst = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
pst.setString(1, p.getName());
pst.setString(2, p.getGender());
int row = pst.executeUpdate();
if(row > 0){
/*
* 获取此记录自动生成的id
*/
keys = pst.getGeneratedKeys();
if(keys.first()) {
id = keys.getInt(1);
}
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DBCPUtil.closeAll(keys, pst, null);
}
return id;
}