//返回自增长id
public static <T> int insertNo(String sql, T bean,
StatementMapper<T> mapper) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
int updNum = 0;
try {
conn = getConn();
stmt = conn.prepareStatement(sql, stmt.RETURN_GENERATED_KEYS);//插入行并返回键值
mapper.mapStatement(stmt, bean);
updNum = stmt.executeUpdate();
rs = stmt.getGeneratedKeys();//得到生成的键值
if(rs.next()) {
updNum = rs.getInt(1);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbUtils.closeQuietly(rs);
DbUtils.closeQuietly(stmt);
DbUtils.closeQuietly(conn);
}
return updNum;
}
通用方案