JDBC调用过程与函数代码实现
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Types;
public class TestProcedure {
/**
* 过程:sql={call proc_name(?,?...)}
* 函数:sql={?=call name(?,?...)}
* @param args
*/
public static void main(String[] args) {
Connection conn = DBUtil.getConnection();
String sql = "{call proc_1(?,?)}";
try {
CallableStatement cst = conn.prepareCall(sql);
//设置输入参数
cst.setInt(1, 7369);
//注册输出参数的类型
cst.registerOutParameter(2, Types.VARCHAR);
//执行
cst.execute();
//获得输出参数的值
String ename = cst.getString(2);
System.out.println(ename);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}