java调存储过程_java调用存储过程

说到使用java调用存储过程,就不得不说一下java.sql包了。在此包中的Connection类中有个方法:prepareCall(String sql) 创建一个 CallableStatement 对象来调用数据库存储过程。使用此方法调用一个存储过程。返回值为CallableStatement类,这个类为存储过程设置入参以及出参。详情请参阅api。用到的方法:

registerOutParameter(String parameterName, int sqlType) 将名为 parameterName 的 OUT 参数注册为 JDBC 类型 sqlType。

getObject(int parameterIndex)  以 Java 编程语言中 Object 的形式获取指定参数的值。

setString(String parameterName, String x) 将指定参数设置为给定 Java String 值。

下面代码实现:

stmt是一个CallableStatement类。conn是一个Connection类。

这里测试的存储过程只有一个入参。

stmt=conn.prepareCall(“{call 存储过程名字(?,?)}”);//?为参数。

stmt.setString(1, “a”);//设置第一个参数:入参为a。

stmt.registerOutParameter(2,OracleTypes.CURSOR);//设置第二个参数返回数据JDBC 类型 sqlType。

stmt.execute();

res=(ResultSet)stmt.getObject(2);//以 Java 编程语言中 Object 的形式获取出参数的值。

res.getString(1)

res.getInt(2)//根据返回字段的顺序取得对应的数据。类型要一致。

代码只有主要部分,需要获得上述未声明的类就可以使用。

若有不足,请多多指教!

共勉,努力学习,一起进步。谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值