Java 调用MySQL存储过程配置与调用

java 调用MySQL存储过程配置与调用

一. 环境配置。
1. JDK安装, MySQL的安装, 启动(省略)。
注意: 在Path目录下增加MySQL的安装目录, 我的是
D:/Program Files/MySQL/MySQL Server 5.0/bin

2. 配置MySQL JDBC环境.
下载
mysql-connector-java-5.0.3-bin.jar  (版本号现在可能有更新)
http://dev.mysql.com/downloads/connector/j/

3. 配置
把mysql-connector-java-5.1.12-bin.jar解压后中的mysql-connector-java-5.1.12-bin.jar
放在JDK安装目录的lib目录下, 例如我的是D:/Program Files/Java/jdk1.6.0_10/lib

4. 同时配置在CLASSPATH环境变量中增加下面路径
%JAVA_HOME%/lib/mysql-connector-java-5.1.12-bin.jar;
例如我的CLASSPATH是这样的: .;%JAVA_HOME%/lib/mysql-connector-java-5.1.12-bin.jar;



二. MySQL 中数据库和存储过程的创建
1. data.sql 文件

-- 创建数据库
DROP DATABASE IF EXISTS `MyTestDataBase`;
CREATE DATABASE `MyTestDataBase`;
USE `MyTestDataBase`;

-- 创建存储过程
DROP PROCEDURE IF EXISTS `TestJavaPro`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `TestJavaPro`(
    out result int                # 返回操作结果
)
begin
        set result = 4;
end;;
DELIMITER ;
/

2. SQLUtils.java 文件
//
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Types;
public class SQLUtils {
    String url = "jdbc:mysql://192.168.0.76:3306/MyTestDataBase";         // 数据库名
    String userName = "root";                                            // 登陆名
    String password = "root";                                            // 密码
    public Connection getConnection() {
        Connection con=null;
        try{
            DriverManager.registerDriver(new com.mysql.jdbc.Driver());
            con = DriverManager.getConnection(url, this.userName, this.password);
        }catch(SQLException sw){
         }
        return con;
    }
    public void testProc(){
        Connection conn = getConnection();
        CallableStatement stmt = null;
        try{
            stmt = conn.prepareCall("{call TestJavaPro(?)}");              // 存储过程名称 
            stmt.registerOutParameter(1, Types.INTEGER);
            stmt.execute();
            int i= stmt.getInt(1);
            System.out.println("count = " + i);
        }catch(Exception e){
            System.out.println("hahad = "+e.toString());
        }finally{
            try {
                stmt.close();
                conn.close();
            }catch (Exception ex) {
                System.out.println("ex : "+ ex.getMessage());
            }
        }
    }
    public static void main(String[] args) {
        new SQLUtils().testProc();
    }
}
//

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值