關於jdon 中SequenceDaoSql 的使用和原理 和jta 使用

sezelee發表於2007-06-22
Long nextid = null;
try {
List list = jdbcTempSource.getJdbcTemp().queryMultiObject(queryParams, sql);
Iterator iter = list.iterator();
if (iter.hasNext()) {
Map map = (Map) iter.next();
nextid = (Long)map.get("id");
}
if (nextid == null) {
throw new SQLException("Error: A null sequence was returned from the database (could not get next " + idType + " sequence).");
}

nextid = new Long(nextid.longValue() + 1);//

String updatesql = "update jiveID set id = ? where idType = ?";
queryParams.clear();
queryParams.add(nextid);
queryParams.add(new Integer(idType));

jdbcTempSource.getJdbcTemp().operate(queryParams, updatesql);


nextid = new Long(nextid.longValue() + 1);//
String updatesql = "update jiveID set id = ? where idType = ?";

假如有多人同時取nextid,是否可能取回相同的值。
是否應該加上同步?

另外我想問一問,jdon有沒有提供“事務”處理。[我在程式碼中沒找到]
如果要使用jta [jotm] ,那麼jta放在哪一層比較好。[放在action中可以嗎]

謝謝!

相關文章