首页 / 操作系统 / Linux / Java代码调用存储过程(JDBC)
相关API:java.sql.CallableStatement使用到java.sql.CallableStatement接口,该接口专门用来调用存储过程;该对象的获得依赖于java.sql.Connection;通过Connection实例的prepareCall()方法返回CallableStatement对象prepareCall()内部为一固定写法{call 存储过程名(参数列表1,参数列表2)}可用?占位eg: connection.prepareCall("{call proc_employee(?)}");存储过程中参数处理:输入参数:通过java.sql.CallableStatement实例的setXXX()方法赋值,用法等同于java.sql.PreparedStatement输出参数:通过java.sql.CallableStatement实例的registerOutParameter(参数位置, 参数类型)方法赋值,其中参数类型主要使用java.sql.Types中定义的类型Java代码调用带输入参数的存储过程 (根据输入ID查询雇员信息)
publicvoid executeProcedure() { try { /** *callableStatementjava.sql.CallableStatement *connectionjava.sql.Connection *jdbc调用存储过程原型 *{call存储过程名(参数列表1,参数列表2)}可用?代替 */ callableStatement=connection.prepareCall("{call proc_employee_findById(?)}"); callableStatement.setInt(1, 1); //设置输入参数 resultSet=callableStatement.executeQuery();//执行存储过程 if(resultSet.next()) { System.out.println(resultSet.getInt(1)+""t"+resultSet.getString(2)); } } catch (SQLException e) { e.printStackTrace(); } }