4
回答
spring整合ibatis,proxool问题,池子中连接不销毁
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

本人用spring整合ibatis,proxool中,发现,池子中连接不销毁。这样的话,连接池中的可用连接会越来越多,直到达到最大连接为止。还请各位个点建议、不甚感激。

  <!-- 配置数据源,使用proxool连接池 -->
<bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource" init-method="registerPool" destroy-method="close">
<property name="driver">
  <value>${database.driver}</value>
</property>
<property name="driverUrl">
  <value>${database.url}</value>
</property>
<property name="user">
  <value>${database.username}</value>
</property>
<property name="password">
  <value>${database.password}</value>
</property>
<!-- 连接池别名-->
<property name="alias">
  <value>MyPool</value>
</property>
<!-- 最少保持的空闲连接数 -->
<property name="prototypeCount">
  <value>10</value>
</property>
<!-- 允许最小连接数(在用连接+空闲连接) -->
<property name="minimumConnectionCount">
  <value>10</value>
</property>
<!-- 允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候 -->
<property name="maximumConnectionCount">
  <value>600</value>
</property>
<!-- 线程处于睡眠状态的最长时间,housekeeper检查各个连接的状态,
           判断是否需要销毁或者创建-->
<property name="houseKeepingSleepTime">
<value>3000</value> 
</property>

<!-- 如果housekeeper检测到某个线程的活动时间大于这个数值.它将会杀死这个线程(默认为5分钟)-->
<property name="maximumActiveTime">
<value>10000</value>
</property>

<!--10s后释放连接池中的连接
<property name="maximumConnectionLifetime">
  <value>10000</value>
</property>-->

<!-- 是否打印执行的SQL,true打印,false不打印 -->
<property name="trace">
  <value>false</value>
</property>
<property name="verbose">
  <value>false</value>
</property>
<property name="testBeforeUse">
  <value>true</value>
</property>
<property name="testAfterUse">
  <value>true</value>
</property>
<property name="houseKeepingTestSql">
  <value>select sysdate from dual</value>
</property>
</bean>

<!-- 配置ibatis -->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation">     
<value>classpath:config/sqlmap-config.xml</value>  
</property>
</bean>

举报
likeUbuntu
发帖于5年前 4回/2K+阅
顶部