sequencegenerator.java
来自「短信系统SMS:支持普通短信、长短信和wap push短信的发送。」· Java 代码 · 共 84 行
JAVA
84 行
package com.ekun.common.db;
import com.ekun.common.log.*;
import java.sql.*;
/**
* <p>Title: </p>
* 取Oracle数据库Sequence值.单例模式。
* <p>Description: </p>
* <p>
* 使用方法:
* </p>
* <p>
* SequenceGenerator sequence = SequenceGenerator.getInstance();
* int idSeq = sequence.getSequence("SeqName");
* </p>
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author ekun
* @version 1.0
*/
public class SequenceGenerator
{
private static SequenceGenerator sequence = null;
protected static Logger logger = LoggerFactory
.getLogger(SequenceGenerator.class);
static
{
sequence = new SequenceGenerator();
}
public static SequenceGenerator getInstance()
{
return sequence;
}
/**
* 静态取序列号方法
* @param seqName 序列名称
* @return 序列号,类型int
* @throws ServiceLocatorException
*/
public static int getSequence(String seqName)
throws DBAccessException
{
Connection conn = null;
Statement statement = null;
ResultSet rsCounter = null;
int idSequence = -1;
String sqlStr = null;
try
{
conn = DBManager.getDBConn();
sqlStr = "select " + seqName + ".nextval SID from dual ";
statement = conn.createStatement();
rsCounter = statement.executeQuery(sqlStr);
if (rsCounter.next())
{
idSequence = rsCounter.getInt(1);
}
}
catch (DBAccessException se)
{
throw new DBAccessException("A SQL error has occurred in DBManager.getDBConn()");
}
catch (SQLException e)
{
logger.error("A SQL error has occurred in DBManager.getDBConn()");
}
finally
{
ClearDBResource.closeStatment(statement);
ClearDBResource.closeResultSet(rsCounter);
ClearDBResource.closeConnection(conn);
}
return idSequence;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?