java调用mysql的存储过程

讲java程序调用mysql的存储过程之前,先聊聊mysql是如何调用自定义的存储过程的,首先先自定义一个存储过程:

这里写图片描述

需要注意的是,delimiter &或delimiter ;之间有一个空格,没空格会出错。调用存储过程的时候输出值要在前面加上“@“,不然也会出错。

接下来讲讲java是如何调用mysql的存储过程的,其实也不难,就像调用java函数一样即可,废话不多说,上代码:

/**
 * java调用mysql的存储过程
*/
    @Test
    public void test2() {
        Connection conn = null;
        CallableStatement stat = null;
        ResultSet set = null;
        try {
            conn = JdbcUtil.getConnection();//自定义的获取连接的方法
            stat = conn.prepareCall("{call p_name(?,?)}");
            stat.setString(1, "to java");
            stat.registerOutParameter(2, Types.VARCHAR);//需要注册返回值是什么类型
            stat.execute();//执行存储过程的调用
            String result = stat.getString(2);
            System.out.println("result:" + result);

        } catch(Exception e) {
            e.printStackTrace();
        } finally {
            JdbcUtil.release(conn, stat, set);//自定义的释放资源的方法
        }
    }

执行以下函数,结果如下图所示:

result:welcome to java

嗯,成功解决,以上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值