java存储过程的调用
-
存储过程中只有输入参数时,
与普通select调用无区别。传入的sql语句为调用存储过程语句。
参数的传递通过占位符.set语句完成
-
//需要对输出参数进行注册 //输出参数的注册 CallableStatement对象.registerOutParameter(占位符位置,参数类型); //Types.VARCHAR - 字符串 //Types.INTEGER - 整形 //获得输出参数 //在 ResultSet 结果集的遍历中通过 CallableStatement对象.get参数类型(储过程参数列表的位置);
-
当存储过程包含输入输出参数时
将存储过程输入的设置,与输出的设置 执行 ,便是输入输出类型。
调用与输出类型一致。
mybatis中调用存储过程
mybatis中对于存储过程输出参数的在占位符处添加 mode =OUT ,JDBCType = 参数类型
获取输出参数需要通过传递的Map对象来获取,及调用存储过程,mybatis的参数赋值只能通过Map
使用注解时需要添加 @Options(statementType = StatementType.CALLABLE)