ResultSet closed 错误解决

Druid连sqlite,能查询出结果,却报ResultSet closed异常 。

百度了一圈倒是碰到有人说类似的 ResultSet is closed 的错误的,没找到解决方案,但可以确定是druid的问题。而且是druid的一个bug。

<!-- 打开PSCache,是否缓存preparedStatement,也就是PSCache。 PSCache对支持游标的数据库性能提升巨大,比如说oracle。 在mysql5.5以下的版本中没有PSCache功能,建议关闭掉。作者在5.5版本中使用PSCache,通过监控界面发现PSCache有缓存命中率记录,该应该是支持PSCache。 -->
        <!--注:发现一个错误,Druid连sqlite,ResultSet closed异常,如果出现这个错误,注释掉这2项-->
        <property name="poolPreparedStatements" value="true" />
        <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />

直接将上面的这2个属性注释掉,这个问题解决。

把poolPreparedStatements设置成false,或者注释掉;

maxOpenPreparedStatements也注释掉。即可解决,如果是用jdbc的写法,那么设置下

dp.setMaxOpenPreparedStatements(0) , 就ok了。 

猜你喜欢

转载自my.oschina.net/sprouting/blog/1815268
今日推荐