1、JDBC调用存储过程: CallableStatement

/**
*p是要调用的存储过程的名字,存储过程的4个参数,用4个?号占位符代替
*其余地方写法固定
*/
CallableStatement cstmt = conn.prepareCall("{call p(?,?,?,?)}");
/**
*告诉JDBC,这些个参数,哪些是输出参数,输出参数的类型用java.sql.Types来指定
*下面的意思是,第3个?和第4个?是输出参数,类型是INTEGER的
*Types后面具体写什么类型,得看你的存储过程参数怎么定义的
*/
cstmt.registerOutParameter(3, Types.INTEGER);
cstmt.registerOutParameter(4, Types.INTEGER);
/**
*在我这里第1个?和第2个?是输入参数,第3个是输出参数,第4个既输入又输出
*下面是设置他们的值,第一个设为3,第二个设为4,第4个设置为5
*没设第3个,因为它是输出参数
*/
cstmt.setInt(1, 3);
cstmt.setInt(2, 4);
cstmt.setInt(4, 5);
//执行
cstmt.execute();
//把第3个参数的值当成int类型拿出来
int three = cstmt.getInt(3);
System.out.println(three);
//把第4个参数的值当成int类型拿出来
int four = cstmt.getInt(4);
System.out.println(four);
//用完别忘给人家关了,后开的先关
cstmt.close();
conn.close();

2、JdbcTemplate()调用存储过程

getJdbcTemplate().execute(new ConnectionCallback() {@Overridepublic Object doInConnection(Connection con) throws SQLException,DataAccessException {CallableStatement prepareCall = con.prepareCall("{call update "+ "(?)}");prepareCall.setString(1, num);prepareCall.execute();return null;}});

转载于:https://www.cnblogs.com/x-jingxin/p/9633488.html

Java执行存储过程相关推荐

  1. java 执行存储过程报语法错误_为什么我在批处理从Java上执行PostgreSQL上的存储过程时收到错误通知“结果不合理”?...

    我在数据库中有这个过程: CREATE OR REPLACE FUNCTION replacePageRelevance(id INT, value REAL) RETURNS VOID AS $$ ...

  2. java连接sqlserver 2005执行存储过程的几种情况

    2019独角兽企业重金招聘Python工程师标准>>> java链接sqlserver 执行存储过程 package com.antianlu.test;import java.sq ...

  3. Java中执行存储过程和函数(web基础学习笔记十四)

    一.概述 如果想要执行存储过程,我们应该使用 CallableStatement 接口. CallableStatement 接口继承自PreparedStatement 接口.所以CallableS ...

  4. java使用集合存储过程_详解java调用存储过程并封装成map

    详解java调用存储过程并封装成map 发布于 2020-5-1| 复制链接 摘记: 详解java调用存储过程并封装成map           本文代码中注释写的比较清楚不在单独说明,希望能帮助到大 ...

  5. Java对存储过程的调用方法

    一.Java如何实现对存储过程的调用: A:不带输出参数的 create procedure getsum @n int =0<--此处为参数--> as declare @sum int ...

  6. Oracle的job(定时执行存储过程)

    我们在项目开发中,常常会有一些复杂的业务逻辑.使用oracle的存储过程,可以大大减少java程序代码的编写工作量,而且存储过程执行在数据库上,这样可以利用oracle的良好性能支持,极大地提高程序执 ...

  7. Java对存储过程的调用方法 --转载

    一.Java如何实现对存储过程的调用: A:不带输出参数的 create procedure getsum @n int =0<--此处为参数--> as declare @sum int ...

  8. java调用存储过程之环境测试

    ----oracle10g ojdbc14.jar ----oracle11g ojdbc6.jar <?xml version="1.0" encoding="U ...

  9. Java 匿名存储过程_Java程序员的存储过程

    存储过程是指保存在数据库并在数据库端执行的程序.你可以使用特殊的语法在Java类中调用存储过程.在调用时,存储过程的名称及指定的参数通过JDBC连接发送给DBMS,执行存储过程并通过连接(如果有)返回 ...

最新文章

  1. Nginx网站常见的跳转配置实例
  2. Dubbo官方的Starter发布1.0.0测试版,与Spring Boot的结合将更加自然
  3. 注释驱动的 Spring cache 缓存介绍--转载
  4. JVM堆内存控制/分代垃圾回收
  5. java桌面应用程序打包为exe
  6. mfc140dll 丢失 微软常用运行库_微软常用运行库合集 2020.9月(32amp;64位)
  7. 程序员自我提高的几点建议 很实诚
  8. 数据分析菜鸟怒怼面试官却被打脸,只会SQL也敢来面试?
  9. 康轩职教计算机应用基础课件,《Excel中IF函数的应用-机器人任务》计算机应用基础职教课件.ppt...
  10. linux系统中清空文件内容的三种方法
  11. .net2005底层类
  12. 联想电脑管家和驱动人生 驱动版本对比
  13. 上海大学计算机考证时间表
  14. android studio在夜神上打开_android studio 使用夜神模拟器 开发调试
  15. python简单爬虫程序分析_Python简单爬虫
  16. 机器学习项目(五) 电影推荐系统(二)
  17. 《如何阅读一本书》——读书方法的整理
  18. vscode自定义括号颜色
  19. linux怎么全局搜索,汇总Linux命令 --全局搜索
  20. 【教程】C++-赋值语句

热门文章

  1. 梦回JavaScript--数据类型之undefined
  2. 注意扩展方法的返回值类型
  3. hdu 1423 最长公共递增子序列
  4. Win7中IIS7.0安装及ASP环境配置
  5. vue项目(webpack+mintui),使用hbuilder打包app - 小小人儿大大梦想 - 博客园
  6. 【STM32 .Net MF开发板学习-18】GPRS遥控智能小车
  7. 4. 用MVC实现URL路由
  8. 图像去畸变和添加畸变
  9. MFC入门(一)——MFC是一个编程框架
  10. set()与get()详细解答(C#)