java 调用mysql存储过程
2015-11-24 10:00
453 查看
mysql存储过程调用方法:
调用:
Changeorder(?,?)为存储过程名,?为输入参数。new String[]{cid,changevalue}为存储过程参数赋值
这里还有带有输入输出的方法,项目中没有用到,记录一下
// *******************callpro2存储过程2************************
public static CallableStatement callPro2(String sql, String[] inparameters,
Integer[] outparameters) {
try {
ct = getConnection();
cs = ct.prepareCall(sql);
if (inparameters != null) {
for (int i = 0; i < inparameters.length; i++) {
cs.setObject(i + 1, inparameters[i]);
}
}
// cs.registerOutparameter(2,oracle.jdbc.OracleTypes.CURSOR);
if (outparameters != null) {
for (int i = 0; i < outparameters.length; i++) {
cs.registerOutParameter(inparameters.length + 1 + i,
outparameters[i]);
}
}
cs.execute();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e.getMessage());
} finally {
}
return cs;
}
// 定义变量 private static Connection ct = null; private static CallableStatement cs = null;
//……省略部分jdbc通用代码
public static CallableStatement callPro1(String sql, String[] parameters) { try { ct = getConnection(); cs = ct.prepareCall(sql); if (parameters != null) { for (int i = 0; i < parameters.length; i++) { cs.setObject(i + 1, parameters[i]); } } cs.execute(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e.getMessage()); } finally { close(rs, cs, ct); } return cs; }
调用:
@Override public void changeOrder(String cid, String changevalue) { new SqlHelper(); SqlHelper.callPro1("{call Changeorder(?,?)}",new String[]{cid,changevalue}); }
Changeorder(?,?)为存储过程名,?为输入参数。new String[]{cid,changevalue}为存储过程参数赋值
这里还有带有输入输出的方法,项目中没有用到,记录一下
// *******************callpro2存储过程2************************
public static CallableStatement callPro2(String sql, String[] inparameters,
Integer[] outparameters) {
try {
ct = getConnection();
cs = ct.prepareCall(sql);
if (inparameters != null) {
for (int i = 0; i < inparameters.length; i++) {
cs.setObject(i + 1, inparameters[i]);
}
}
// cs.registerOutparameter(2,oracle.jdbc.OracleTypes.CURSOR);
if (outparameters != null) {
for (int i = 0; i < outparameters.length; i++) {
cs.registerOutParameter(inparameters.length + 1 + i,
outparameters[i]);
}
}
cs.execute();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e.getMessage());
} finally {
}
return cs;
}
相关文章推荐
- Java设计模式
- Java集合Map接口与Map.Entry学习
- eclipse实用快捷键
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
- 在eclipse中怎样给项目添加关联项目
- java常用 api
- java正则表达式抽取html数据
- Struts2和Spring的整合
- java图片转byte转string
- struts2 if正确标签示例
- spring datasource 配置
- Eclipse SVN冲突详细解决方案
- JDK安装与环境变量配置
- 【原创】java 获取十个工作日之前或之后的日期(算当天)-完美解决-费元星
- struts2的Action传参总结
- Android杂记:genymotion与eclipse报错问题
- Java系列:《Java核心技术 卷一》学习笔记,cchapter11 异常
- Eclipse中修改SVN用户名和密码方法
- 5、Java面向对象基础
- 详解Java编程中对象的序列化