以前一篇中写到了 hibernate 调用存储过程,这里介绍 Spring 借道 JdbcTemplate 如何调用数据库存储过程。还是以前面的那个 DB2 存储过程为例,该过程的代码如下:
1 2 3 4 5 6 7 |
CREATE procedure selectAllUsers(IN piAge INTEGER) DYNAMIC RESULT SETS 1 BEGIN DECLARE temp_cursor1 CURSOR WITH RETURN TO CLIENT FOR SELECT * FROM test where age < piAge; OPEN temp_cursor1; END; |
这个过程中最后一行直接打开了一个游标,也就是返回了一个结果集。调用存储过程的方法应该看看 org.springframework.jdbc.core.JdbcTemplate 的各个 execute() 方法,具体点就是带了 CallableStatementCallback<T> 参数的那两个 execute(),究底的话又归结为其中之一。 阅读全文 >>