我们手工执行java程序是这样的: 1 在记事本中或者是UE的文本编辑器中,写好源程序; 2 使用javac命令把源程序编译成.class文件; 编译后的.class(类字节码)文件中会包含以下内容: ConstantPool:符号表; FieldInfo:类中的成员变量信息; MethodInf
/**
* 执行存储过程
* @param 存储过程名称
* @param 所需参数
* @return 存储过程发返回的错误信息
* @author wuhao
* @throws Exception
*/
public static void executeProc(String call,Object[] params) throws Exception{
String result = "";
Connection conn = null;
CallableStatement proc = null;
try {
conn = dao.getSessionFactory().openSession().connection();
conn.setAutoCommit(false);
proc = conn.prepareCall(call);
int index = 0;
if(params != null && params.length > 0){
for (int i = 1; i <= params.length; i++) {
proc.setObject(i, params[i-1]);在SQL Server2005中添加了一个新的函数:row_number(),返回结果集分区内行的序列号。 那么我现在就用这个函数做一个通用的分页方法,在和以前大家经常用到的那三种方法相比,它的优点:第一, 当然是比较通用了,第二:性能很出色,有90多万条的数据,用这样
index +=1;
}
}
index = index+1;
proc.registerOutParameter(index,Types.VARCHAR);
proc.execute();
result = proc.getString(index);
if( null != result && !result.equals("") ){
conn.rollback();
} else {
conn.commit();
}
} catch (Exception e) {
conn.rollback();
throw e;
} finally {
if(null != proc)
proc.close();
if(null != conn)
conn.close();
}
}