java:我的DButils的QueryRuner为什么会这样...
官方文档
我认为我这里用的应该是该类的All methods中的第六个方法
<T> List<T> execute(String sql, ResultSetHandler<T> rsh, Object... params)
应当返回List<Schedule>
某些人真的是睿智,问题么不能回答,点踩倒是点的很勤快,呵呵.
回答:
你传入的 ResultSetHandler<T>
有问题。这里你传入的是 BeanListHandler<T>
看一下他的实现这里本身就是一个List<T>
, 我猜这里传入一个BeanHandler<T>
应该可以解决你的问题。
public class BeanListHandler<T>extends Object
implements ResultSetHandler<List<T>>
这里省略了部分代码,核心部分如下。你查看BeanListHandler<T>
的handle方法会发现这里的返回值是一个List,最后就变成了List<List<Schedule>>
private <T> List<T> execute(Connection conn, boolean closeConn, String sql, ResultSetHandler<T> rsh, Object... params) throws SQLException { List<T> results = new LinkedList<T>();
ResultSet rs = null;
rs = this.wrap(stmt.getResultSet());
results.add(rsh.handle(rs));
return results;
}
回答:
你用的应该是第六个,但是第二个参数是什么类型?是不是多了一个list?
https://commons.apache.org/pr...
以上是 java:我的DButils的QueryRuner为什么会这样... 的全部内容, 来源链接: utcz.com/p/172086.html