从java中调用存储过程。
package com.cxz.util;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.Types;
import com.jykj.util.ConnPool;
public class ProcedureDriver {
public ProcedureDriver() {
String mac = "00-14-25-4A-8B-AB";
String outer = "222.30.55.10";
String inner = "192.168.1.2";
int barId = 1;
String ie = null;
String desktop = null;
String sql = "{ call bind(?,?,?,?,?,?) }";
try {
Connection conn = ConnPool.getConenction();
CallableStatement proc = conn.prepareCall(sql);
proc.setString(1, mac);
proc.setString(2, outer);
proc.setString(3, inner);
proc.setInt(4, barId);
proc.registerOutParameter(5, Types.VARCHAR);
proc.registerOutParameter(6, Types.VARCHAR);
proc.execute();
ie = proc.getString(5);
desktop = proc.getString(6);
proc.close();
conn.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(ie);
System.out.println(desktop);
}
public static void main(String[] args) {
new ProcedureDriver();
}
}