jfinal调用定时器执行存储过程

617034842 发布于 2015/05/26 14:52
阅读 755
收藏 0

@JohnsonZ 你好,想跟你请教个问题:我通过使用jfinal框架,使用(Timer)定时器定时执行存储过程,可是看你博客上面的源码有些不明白故向你请教一下!先提前谢谢你了!

源码如下:

//通过定时定时执行继承 ICallback类中的调用存储过程的方法

Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
OracleDbPro odp = new OracleDbPro();
odp.oid = rank1;
odp.score = scoreNum;
Db.execute(odp);
ResultSet rs = odp.rs;
}
},2000);

OracleDbPro 类中的方法

public String oid = null;//机构id前台页面传过去的参数之一
public String score=null;//积分前台页面传过去的参数之一
public ResultSet rs = null;


//执行存储过程
@Override
public Object call(Connection conn) throws SQLException {
CallableStatement proc = null;
proc = conn
.prepareCall("{ call add_scores(?,?) }");
proc.setString(1, oid);
proc.setString(2, score);
proc.registerOutParameter(2, OracleTypes.CURSOR); //执行到这一步的时候出现sql异常,并且这一段代码有点不明白!望请教
proc.execute();
rs = (ResultSet) proc.getObject(2);  //这段代码是什么意思  有点不明白  望请教
return rs;
}

这些源码有什么错误吗?  跪求大神赐教!  小弟在这里谢谢了!  在次表示感谢!




加载中
0
Realfighter
Realfighter
registerOutParameter是注册输出参数,你的存储过程有没有输出参数?有的话 需要那一行代码,getObject是获取输出的结果,不要完全的copy网上的代码,根据自己的情况做一些修改。
6
617034842
我的存储过程没有输出参数,我这边需要怎么修改那!可否给点提示那?谢谢了
返回顶部
顶部