Java代码中执行存储过程和函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/buyaoshuohua1/article/details/78274434

一:先看几个概念

首先,自己参考了几篇文章,写的很不错,自己也借鉴一下,然后会在最后贴出自己在项目中使用到的存储过程,已经实现过程,大家可以做个对比,实现方法不同。http://www.cnblogs.com/liunanjava/p/4261242.html

过程和函数,它们被编译后保存在数据库中,称为持久性存储模块(Persistent Stored Module,PSM),可以反复调用,运行速度快。不同之处是函数必须指定返回类型

Java调用结构:

存储过程:{call <procedure-name>[(<arg1>,<arg2>, ...)]}
函数:{?= call <procedure-name>[(<arg1>,<arg2>, ...)]}

如果要调用存储过程,则使用第一种语法,就是开头不带问号的语法,call 后面是过程名,
如果没有参数,可以省略小括号。
如果要调用函数,则使用第二种语法,开头带有一个问号加等号,实际上这个问号就是一个占位符,这个问号总是调用函数的第一个占位符。其它部分与过程的语法相同。

二、CallableStatement 执行存储过程

2.1、建立基类

2.2、执行不带参但是有返回值的存储过程

下面建立存储过程

调用

2.3、执行带参带返回值的存储过程

2.4、执行返回值为游标的存储过程

以上看出,需要将输出的参数,和结果注册,输入的参数不要注册,

但输入参数需要设置占位符

三、执行函数

3.1 、函数功能为根据雇员id 返回姓名


其它的方法与过程一样,只是多了个返回值类型。

------------------------------------------------------------------

四:接下来说下自己项目中的,直接看代码。

创建储存过程的代码基本一样,只是Java调用存储过程的时候,跟上边调用的方法不同,大家可以自行理解:

4.1:更新订单状态,返回状态值

4.2:Java调用存储过程代码

4.3:再附上两段代码,有关Java调用储存过程的

4.4:最后一张图片--mysql执行储存过程





展开阅读全文

没有更多推荐了,返回首页