如:
@wendal 一次查询返回多个结果集
jdbc 实现如下
cstmt.registerOutParameter(1,返回表代表的类型);
cstmt.registerOutParameter(2,返回表代表的类型); //两个问号都要注册
然后执行execute()
rs1 = cstmt.getObject(1);
rs2 = cstmt.getObject(2); //获取两个表
@wendal 好的谢谢。正常情况下,一次只能返回一个表格对吧?
@lmm1990 严格来说不是一个"表格", 是一个结果集
@wendal 好的,谢谢
@lmm1990 找到实现方式了,实现方式如下:
Ioc ioc = new NutIoc(new JsonLoader("ioc/dao.js"));
NutDao dao = ioc.get(NutDao.class, "dspDao");
Sql sqls = Sqls.create("select 2;select 1");//, Integer.valueOf(keys[2])));
sqls.setCallback(new SqlCallback() {
public Object invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException {
List list = new LinkedList();
while (rs.next()) {
list.add(rs.getString(1));
if (rs.getStatement().getMoreResults()) {
rs = rs.getStatement().getResultSet();
} else {
rs.close();
break;
}
}
return list;
}
});
dao.execute(sqls);
System.out.println(sqls.getList(String.class));
@wendal 要的就是一次返回多个结果集,还是谢谢你了