JAVA中获取刚插入数据库中的数据ID(主键,自动增长)
//添加用户
public User add(User user) {
Connection con = null;
PreparedStatement stm = null;
ResultSet rs = null;
User info = null;
try{
// 与数据库建立连接
con = JDBCUtils.getConnection();
//sql语句
String sql = "insert into user_info(username,password) value(?,?)";
stm=con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
//填充占位符
stm.setString(1,user.getName());
stm.setString(2,user.getPassword());
stm.executeUpdate();
//获取最后ID。
rs=stm.getGeneratedKeys();
//int n = stm.executeUpdate(); // 返回受影响的行数
if(rs.next()){
// 这里还要再实例化一次,找了几个钟啊,回忆总想哭
info = new User();
int id = rs.getInt(1);
info.setId(id);
return info;
}else{
return null;
}
}
catch (Exception exc){
exc.printStackTrace();
}
finally {
// 关闭资源
JDBCUtils.close(null,stm,con);
}
return null;
}
关键语句stm=con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); rs=stm.getGeneratedKeys();
设置增长起始值alter table 表名 AUTO_INCREMENT=1000;
这里设置起始值是1000
本文作者:大海&
本文链接:https://www.cnblogs.com/oceanus/p/13388276.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。