jfinal获取mysql_jfinal 调用mysql结果集-问答-阿里云开发者社区-阿里云
我的做法是:
1、写一个过程调用类,实现ICallback接口,完整代码如下:
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import oracle.jdbc.OracleTypes;
import com.jfinal.plugin.activerecord.ICallback;
import com.jfinal.plugin.activerecord.Model;
import com.jfinal.plugin.activerecord.ModelBuilder;
/**
* 统计分析数据
* @author Administrator
*
*/
public class ProcedureTool implements ICallback {
private Object[] paras;
private String procedure;
private List> result;
@SuppressWarnings("rawtypes")
private Class extends Model> mdClass;
/**
* @param proc 存储过程名称及参数:如 prcName(?,?,?,?)
* @param paras 输入\输出 参数,默认最后一个为游标参数
*/
@SuppressWarnings("rawtypes")
public void setParas(Class extends Model> modelClass,String proc,Object...paras){
procedure=proc;
this.paras=paras;
mdClass=modelClass;
}
/**
* 结果集
* @return
*/
public List> getResultList(){
return result;
}
@Override
public Object run(Connection conn) throws SQLException {
// TODO Auto-generated method stub
CallableStatement proc = null;
result=null;
proc = conn.prepareCall("{ call "+procedure+" }");
for (int i=0; i
proc.setObject(i + 1, paras[i]);
}
proc.registerOutParameter(paras.length+1, OracleTypes.CURSOR);
proc.execute();
ResultSet rs = (ResultSet) proc.getObject(paras.length+1);
try {
result=ModelBuilder.build(rs, mdClass);
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
2、调用getResultList就可以得到结果集了。
以上就是大概思路
南客南客 9个月前
引用来自“车开源”的评论
我的做法是:
1、写一个过程调用类,实现ICallback接口,如下:
public class ProcedureTool implements ICallback {
private Object[] paras;
private String procedure;
private List> result;
@SuppressWarnings("rawtypes")
private Class extends Model> mdClass;
/**
* @param proc 存储过程名称及参数:如 prcName(?,?,?,?)
* @param paras 输入\输出 参数,默认最后一个为游标参数
*/
@SuppressWarnings("rawtypes")
public void setParas(Class extends Model> modelClass,String proc,Object...paras){
procedure=proc;
this.paras=paras;
mdClass=modelClass;
}
/**
* 结果集
* @return
*/
public List> getResultList(){
return result;
}
@Override
public Object run(Connection conn) throws SQLException {
// TODO Auto-generated method stub
CallableStatement proc = null;
result=null;
proc = conn.prepareCall("{ call "+procedure+" }");
for (int i=0; i
proc.setObject(i + 1, paras[i]);
}
proc.registerOutParameter(paras.length+1, OracleTypes.CURSOR);
proc.execute();
ResultSet rs = (ResultSet) proc.getObject(paras.length+1);
try {
result=ModelBuilder.build(rs, mdClass);
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
2、调用getResultList就可以得到结果集了。
jfinal获取mysql_jfinal 调用mysql结果集-问答-阿里云开发者社区-阿里云相关推荐
- mysql cluster 宕机 恢复_mysql cluster 集群恢复不起来,还请大神赐教?报错-问答-阿里云开发者社区-阿里云...
mysql cluster 集群原本使用的几乎全是内存表,后来随着数据的增长,把大的内存表迁移到磁盘表了,之后集群出现6050错误,整个集群挂掉:之后重新启动集群一直启动不起来... ----以下是集 ...
- mysql 繁体_mysql 插入繁体字报错?报错-问答-阿里云开发者社区-阿里云
mysql 插入繁体字报错?报错 爱吃鱼的程序员 2020-06-22 14:09:16 87 @jfinal程序插入繁体字mysql的时候报错,数据库设置了utf8,但是依然报错,数据库,表,字段, ...
- drds 解决问题_DRDS 错误代码如何解决?-问答-阿里云开发者社区-阿里云
DRDS 错误代码如何解决? 猫饭先生 2017-10-30 14:19:20 13731 本文档列出了 DRDS 返回的常见错误码及解决方法. TDDL-4006 ERR_TABLE_NOT_EXI ...
- jfinal mysql读写分离_在JFinal中对数据库读写分离的实现:报错
-问答-阿里云开发者社区-阿里云...
频繁使用 use(configName) 没有任何性能问题,仅仅是为变量赋一个 string 值而已,完全可以忽略######@JFinal######我现在也使用,读用的是视图model,写操作使用 ...
- bae 3.0 mysql_bae3.0 mysql 有时报错?报错-问答-阿里云开发者社区-阿里云
Jfinal 用的MySQL的数据源:MysqlDataSource ds = new MysqlDataSource(); Config: MysqlDataSource ds = new Mysq ...
- mysql hang住_mysql 5.7不定期的hang住重启-问答-阿里云开发者社区-阿里云
线上一台mysql 5.7.17版本实例,系统centos 6.4 ,96G内存,SSD磁盘,buffer pool 60G,buffer pool instance 8,24 CPU.实例访问情况如 ...
- mysql 时间戳 2038_mysql数据库的timestamp为什么从1970到2038的某一时间?某一时间是指什么时间?过了这个时间之后怎么办?-问答-阿里云开发者社区-阿里云...
首先你要理解什么是时间戳.时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至某一时间点的总秒数. 例如北京时间2015-12-31 ...
- ssm mysql 插入date 数据_SSM中插入数据没有报错,但是数据库没有值?报错-问答-阿里云开发者社区-阿里云...
mybatis默认开启事务不会自动提交,只有调用了commit才会提交事务.你这种情况明显是事务成功执行了,而且自增ID也已生效,但事务本身没有提交,请调用mybatis的commit方法提交事务! ...
- canal同步mysql到kafka_使用Canal同步MySQL数据到Kafka 得到的数据中sql字段无值-问答-阿里云开发者社区-阿里云...
这个应该跟你的binlog记录模式有关系,binlog有3中模式,ROW(行模式), Statement(语句模式), Mixed(混合模式)三种模式的用法如下: ROW(行模式):记录那条数据修改了 ...
最新文章
- JavaScript Switch 语句
- android 共享代码,Android团队成员间的代码共享!(Git+Github版)
- layer的一种用法,页面多选时用地址传递值过多时,用弹出层画一个form表单,然后通过提交表单传值
- unity 中让Text的文字动态刷新形式
- (六)jQuery选择器
- git推送本地分支到远程分支
- Python多线程--UDP聊天器
- django-xadmin使用之更改菜单url
- 开启服务_Nike Dunk 开启定制服务
- php 什么是对象,什么是PHP类和类的对象(PHP的类简介)
- Hooks解决了什么问题?
- java中调用dos_JAVA如何调用DOS命令
- C语言判断完数(完整版)
- QPSK调制及MATLAB实现
- 项目管理-项目风险管理
- 计算机信息安全攻防大赛,计算机学院举办校第六届网络攻防大赛
- 鲁大师Q3季度电动车报告:最聪明的电动车跑分曝光
- k8s 有状态服务部署
- ikbc键盘解锁上锁 解决win键失灵的问题
- 算法设计与分析——分支限界法
热门文章
- deepin允许root登录_[多图|需要root]在安卓手机上运行 UOS v20 arm64 版
- 一个简单的JS(盒子移动)
- 字节跳动校招笔试题汇总
- PHP之linux(一)linux基础
- hgame-week1-web-fujiwara tofu shop
- python画图修改背景颜色_如何在 Matplotlib 中更改绘图背景的实现
- 2020海康校招(笔试+2轮面试)复盘
- 关于node链接数据库Handshake inactivity timeout
- 美学心得(第二百三十七集) 罗国正
- Halcon学习笔记-工业相机千兆网线和USB优劣对比