打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Spring如何使用JdbcTemplate调用存储过程的三种情况
userphoto

2014.10.20

关注
public void test() {  
  List resultList = (List) jdbcTemplate.execute(  
     new CallableStatementCreator() {  
        public CallableStatement createCallableStatement(Connection con) throws SQLException {  
           String storedProc = "{call sp_list_table(?,?)}";// 调用的sql  
           CallableStatement cs = con.prepareCall(storedProc);  
           cs.setString(1, "p1");// 设置输入参数的值  
           cs.registerOutParameter(2, OracleTypes.CURSOR);// 注册输出参数的类型  
           return cs;  
        }  
     }, new CallableStatementCallback() {  
        public Object doInCallableStatement(CallableStatement cs) throws SQLException,DataAccessException {  
           List resultsMap = new ArrayList();  
           cs.execute();  
           ResultSet rs = (ResultSet) cs.getObject(2);// 获取游标一行的值  
           while (rs.next()) {// 转换每行的返回值到Map中  
              Map rowMap = new HashMap();  
              rowMap.put("id", rs.getString("id"));  
              rowMap.put("name", rs.getString("name"));  
              resultsMap.add(rowMap);  
           }  
           rs.close();  
           return resultsMap;  
        }  
  });  
  for (int i = 0; i < resultList.size(); i++) {  
     Map rowMap = (Map) resultList.get(i);  
     String id = rowMap.get("id").toString();  
     String name = rowMap.get("name").toString();  
     System.out.println("id=" + id + ";name=" + name);  
  }  
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
hibernate调用mysql存储过程
Spring:JdbcTemplate使用指南
Spring3核心技术之JdbcTemplate
org.springframework.jdbc.core.JdbcTemplate用法
Spring 中的JdbcTemplate使用_阿郎
Spring 注解学习手札(四) 持久层浅析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服