java调用mysql存储过程

public static final String DRIVER_CLASS = "com.mysql.jdbc.Driver"; //驱动名
public static final String URL = "jdbc:mysql://127.0.0.1:端口号/项目名?useUnicode=true&characterEncoding=UTF-8";
public static final String USERNAME = "root"; //用户名
public static final String PASSWORD = "root";//密码

//方法实现

private Map callBillCheck(String billDate) throws Exception
{
String returnCode = "";
String returnMsg = "";
Class.forName(DRIVER_CLASS);
Connection connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
String sql = "{CALL jeecg.pro_BillCheck(?,?,?)}"; //调用存储过程
CallableStatement cstm = connection.prepareCall(sql); //实例化对象cstm
cstm.setString(1, billDate); // 存储过程输入参数
// cstm.setInt(2, 2); // 存储过程输入参数
cstm.registerOutParameter(2, Types.INTEGER); // 设置返回值类型 即返回值
cstm.registerOutParameter(3, Types.VARCHAR); // 设置返回值类型 即返回值
cstm.execute(); // 执行存储过程
returnCode = cstm.getString(2);
returnMsg = cstm.getString(3);
cstm.close();
connection.close();
Map resultMap = new HashMap();
resultMap.put("returnCode", returnCode);
resultMap.put("returnMsg", returnMsg);
return resultMap;
}

猜你喜欢

转载自www.cnblogs.com/bzsz-quan/p/9381791.html