/**
*
* @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调用后台存储过程的例子。
*
* @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调用后台存储过程的例子。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货