//添加用户
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