文档章节

hibernate + dbcp

0o明天会更好o0
 0o明天会更好o0
发布于 2015/04/22 12:09
字数 320
阅读 21
收藏 0


之前的数据源配置信息如下


    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driverClassName}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxActive" value="${jdbc.maxActive}"/>
        <property name="maxIdle" value="${jdbc.maxIdle}"/>
        <property name="maxWait" value="${jdbc.maxWait}"/>
        <property name="poolPreparedStatements" value="true"/>
        <property name="defaultAutoCommit" value="true"/>
        <property name="testOnBorrow" value="true"/>
        <property name="maxOpenPreparedStatements" value="900"/>
    </bean>


解决方案目前有两种方法可以解决oracle游标超出300的错误。


1、从poolPreparedStatements后,删除所有的节点替换为如下的属性

        <!-- 连接被泄露时是否打印 -->  
        <property name="logAbandoned" value="true"/>  
        <!--removeAbandoned: 是否自动回收超时连接-->    
        <property name="removeAbandoned"  value="true"/>  
        <!--removeAbandonedTimeout: 超时时间(以秒数为单位)-->    
        <property name="removeAbandonedTimeout" value="10"/>  
        <!-- 在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位. -->  
        <property name="timeBetweenEvictionRunsMillis" value="10000"/>  
        <!--  在每次空闲连接回收器线程(如果有)运行时检查的连接数量 -->  
        <property name="numTestsPerEvictionRun" value="10"/>  
        <!-- 1000 * 60 * 30  连接在池中保持空闲而不被空闲连接回收器线程-->  
        <property name="minEvictableIdleTimeMillis" value="10000"/>


2、poolPreparedStatements属性设置为false,删除

 <property name="poolPreparedStatements" value="false"/>
<property name="maxOpenPreparedStatements" value="900"/>


问题解决了,如下图


© 著作权归作者所有

共有 人打赏支持
0o明天会更好o0
粉丝 1
博文 1
码字总数 320
作品 0
海淀
高级程序员
私信 提问
Hibernate dbcp连接池使用方法

这里介绍Hibernate dbcp连接池,使用dbcp,开发人员还需要将commons-pool-1.2.jar 和commons-dbcp-1.2.1.jar两个jar包加入到classpath中。 AD: Hibernate有很多值得学习的地方,这里我们主要...

dong.li
2012/04/24
0
0
Hibernate连接配置方法剖析

这里介绍Hibernate连接配置方法,包括介绍在c3p0和dbcp中,都是必需的,因为Hibernate会根据上述的配置来生成connections,再交给c3p0或dbcp管理.但是,proxool则不能。 AD: Hibernate有很多...

dong.li
2012/04/24
0
0
hibernate 连接池 转

转载:Hibernate的三种连接池设置C3P0、Proxool和DBCP 以下三种连接都是以连接MySQl为例。 org.gjt.mm.mysql.Driver jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding......

asdtiang
2010/02/22
669
0
Spring连接数据库的几种常用的方式

Dao测试类 @Test public void test() throws Exception { //获取上下文对象 ApplicationContext ctx = new ClassPathXmlApplicationContext("/spring-config/applicationContext.xml"); //获......

Rickxue
2015/12/08
1K
1
数据库连接池DBCP和C3P0的使用

hibernate开发组推荐使用c3p0; spring开发组推荐使用dbcp; hibernate in action推荐使用c3p0; 一. dbcp 在数据库服务器强行关闭连接或数据库服务重启后,无法reconnect 二. dbcp 连接池的创建...

mn_1127
2015/08/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

产品分析感悟

我终于写完了我的第一份产品分析,按理说,内心应该很高兴才对,但是并没有,我此刻心情很沉重。 好吧,我全交代。。。 在这写篇文章之前,我仿佛打了鸡血般,以为自己打开了新的知识大门,我...

铸剑为犁413
12分钟前
1
0
如何使用less实现随机下雪动画详解

冬天来了,设计师说摇摇乐的场景需要随机下落的雪花动画,第一时间就想到的方法是canvas比较好,项目非常紧急,然而小程序对canvas支持不够友好,容易在项目中出现无法预估的兼容性问题 ,马...

前端小攻略
19分钟前
0
0
一个程序员的成长之路(转)

转自全民直播CTO张云龙讲述的一个程序员的成长之路,觉得有一定的借鉴性,分享一下。 https://github.com/fouber/blog/issues/41

酷沃
19分钟前
2
0
https

进入阿里云域名后台,修改DNS为阿里云官方DNS(默认为官方),然后点击“免费开启SSL证书” 点击“申请”、“验证”并等待签发 然后根据自己的服务器类型下载对应的证书 我使用的是lnmpa工具...

临江仙卜算子
45分钟前
0
0
Quartz监听器Listerner

概述 Quartz的监听器用于当任务调度中你所关注事件发生时,能够及时获取这一事件的通知。Quartz监听器主要有JobListener、TriggerListener、SchedulerListener三种,顾名思义,分别表示任务、...

大笨象会跳舞吧
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部