mysql 存儲過程調用_Java調用mysql的存儲過程

在之前寫過一篇博客是如何mysql如何創建存儲過程,在這一節中,我們是在原來的基礎上來進一步的學習,如何在Java程序中使用Java代碼來調用mysql存儲過程.

mysql創建存儲過程:http://blog.csdn.net/datouniao1/article/details/77891999

這個地方我們就對創建存儲過程不做太多的重復,我們還使用之前創建的pr_multi這個存儲過程

,來看在Java程序中如何來調用這個存儲過程,首先創建一個Java程序,然后鏈接數據庫,這些就不說了,直接上代碼:

package com.wdg.dao;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Types;

import com.mysql.jdbc.CallableStatement;

public class JDBCUtil {

private static final String driverName = "com.mysql.jdbc.Driver";

private static final String dbURL = "jdbc:mysql://localhost:3306/mytest";

private static final String userName = "root";

private static final String userPassword = "11111";

private static Connection conn=null;

public static JDBCUtil instance;

public static JDBCUtil getInstance(){

if(instance == null){

instance = new JDBCUtil();

}

return instance;

}

@SuppressWarnings("unused")

private static Connection getConnection(){

if(conn==null){

try {

Class.forName(driverName);

conn = DriverManager.getConnection(dbURL, userName, userPassword);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}catch (SQLException e) {

e.printStackTrace();

}

}

return conn;

}

public static void main(String [] args) throws SQLException {

String sql="{call pr_multi(?,?,?)}";

CallableStatement cstm = (CallableStatement) getConnection().prepareCall(sql); //實例化對象cstm

cstm.registerOutParameter(1, Types.INTEGER); // 設置返回值類型 即返回值

cstm.setInt(2,5);

cstm.setInt(3,3);

cstm.execute();

System.out.println(cstm.getInt(1));

cstm.close();

getConnection().close();

}

}

調用存儲過程的 代碼主要在main函數中,因為我們上面創建了存儲過程pr_multi,我們在這個地方就定義一個sql,因

create PROCEDURE pr_multi(

out c int,

a int,

b int

)

創建存儲過程的時候,第一個參數是輸出參數,我相信看代碼大概已經了解了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值