日期:2014-05-20 浏览次数:20836 次
//首先在你的数据源上开始事务,下面整个过程全部是一个事务: //其次锁定你的表记录行: private void lock(Connection connection, String tableName, String 其他条件) throws Exception { String updateStr = " UPDATE MAXKEY SET MAXVALUE=MAXVALUE WHERE tableName=? AND 其他条件=?";//行级锁 PreparedStatement stmt = connection.prepareStatement(updateStr); stmt.setString(1, tableName);//用这个表名为区分可以为多个表保存最大主键 stmt.setString(2, 其他条件); num2
------解决方案--------------------
TEXT2008HAW-027增长为TEXT2008HAW-028 :
String key = "TEXT2008HAW-027";
String temp = key.split("-")[1];
temp = Long.toString(Long.parseLong(temp) + 1);
key = key.split("-")[0] + temp;