public int insert(String cName, String ebrand, String cGender) {
String sql = "insert into Cloth (cname,ebrand,cgender) values(?,?,?) ";
Connection conn = DruidUtil.getConn();
PreparedStatement prep = null;
ResultSet rs = null ;
try {
prep = conn.prepareStatement(sql,
PreparedStatement.RETURN_GENERATED_KEYS);
prep.setString(1, cName);
prep.setString(2, ebrand);
prep.setString(3, cGender);
prep.executeUpdate();
rs = prep.getGeneratedKeys();
if (rs.next()) {
//獲取插入數據的Id(主鍵,自增長)
int cId = rs.getInt(1) ;
// 返回這個Id
return cId ;
}
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
} finally {
DruidUtil.close(conn, prep, rs);
}
return -1;
}
本例中使用的數據庫是mysql,在使用jdbc時使用getGeneratedKeys()來獲取返回值rs
其中在數據庫中id為主鍵,自增長的int類型
rs.getInt(1)獲取自增長的id的具體數值
將id作為返回值。
prep = conn.prepareStatement(sql,
PreparedStatement.RETURN_GENERATED_KEYS);
prep.setString(1, cName);
prep.setString(2, ebrand);
prep.setString(3, cGender);
prep.executeUpdate();
rs = prep.getGeneratedKeys();
if (rs.next()) {
//獲取插入數據的Id(主鍵,自增長)
int cId = rs.getInt(1) ;
// 返回這個Id
return cId ;
}
