intgenerate(StringtableName){
Stringsql= "select value from t_table_id where table_name=?";
Connectionconn= null;
PreparedStatementpstmt= null;
ResultSetrs= null;
intvalue= 0;try{
conn=DbUtil.getConnection();
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,tableName);
rs=pstmt.executeQuery();
rs.next();//if(!rs.next()){//thrownew RuntimeException();//}
value= rs.getInt("value");
value++;
modifyValueField(conn,tableName,value);
}catch(Exceptione){
e.printStackTrace();
thrownew RuntimeException();
}finally{
DbUtil.close(rs);
DbUtil.close(pstmt);
DbUtil.close(conn);
}
returnvalue;
}
数据库的方式:
//采用悲观锁来实现同步
//在sql语句后加forupd