/**
 * 
 * @param con - Connection  数据库连接对象
 * @param param1 - String  
 * @param param2 - String  
 * @return String  
 */
public static String getNo(Connection con,String param1,String param2) throws Exception {
CallableStatement cstmt = null;
try {
cstmt = con.prepareCall("{call P_getNo (?,?,?,?,?)}");//P_getNo是存储过程的名称
cstmt.setString(1, param1);
cstmt.setString(2, param2);
cstmt.registerOutParameter(3, Types.VARCHAR);
cstmt.registerOutParameter(4, Types.VARCHAR);
cstmt.registerOutParameter(5, Types.VARCHAR);
cstmt.execute();
String sNo=cstmt.getString(3);
String sErrorCode=cstmt.getString(4);
String sErrorMessage=cstmt.getString(5);
if(sNo==null){
throw new DMSBizException(sErrorCode,sErrorMessage);
}else{
return sNo;
}
} catch (Exception e) {
throw e;
} finally {
if (cstmt != null) {
cstmt.close();
}
}
}//以上是java调用后台存储过程的例子。