换个名字777 2016-05-31 08:16 采纳率: 0%
浏览 2476
已结题

web项目 hibernate+spring 一段时间后访问数据库超时

加缓存 过一天左右无法连接数据库,不加缓存 几分钟就不行了,缓存有没有需要修改的地方
<?xml version="1.0" encoding="UTF-8"?>

<diskStore path="java.io.tmpdir/hibernate/user" />

<!-- DefaultCache setting. -->
<defaultCache maxElementsInMemory="10000" memoryStoreEvictionPolicy="LRU" eternal="false"
    timeToIdleSeconds="300" timeToLiveSeconds="300" overflowToDisk="false" diskPersistent="false" />

<!-- Special objects setting. -->

<cache name="org.hibernate.cache.UpdateTimestampsCache" maxElementsInMemory="10000"
    memoryStoreEvictionPolicy="LRU" eternal="true" diskPersistent="false" overflowToDisk="true" maxElementsOnDisk="1000000" />
<cache name="org.hibernate.cache.StandardQueryCache" maxElementsInMemory="10000"
    memoryStoreEvictionPolicy="LRU" eternal="true" diskPersistent="false" overflowToDisk="true" maxElementsOnDisk="1000000" />

</ehcache>

个人感觉是连接池配置问题,请各位帮忙看看配置有没有问题

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">

    <property name="driverClassName" value="${jdbc.driver}" />
    <property name="url" value="${jdbc.url}" />
    <property name="username" value="${jdbc.username}" />
    <property name="password" value="${jdbc.password}" />


      <!--initialSize: 初始化连接-->  
    <property name="initialSize" value="15"></property>
     <!--minIdle: 最小空闲连接--> 
    <property name="minIdle" value="5" />
     <!--minIdle: 最大空闲连接--> 
    <property name="maxIdle" value="20" />
     <!--maxActive: 最大连接数量-->    
    <property name="maxActive" value="300" />
     <!--maxWait: 超时等待时间以毫秒为单位 1000等于60秒-->  
    <property name="maxWait" value="1000"/>  
     <!--removeAbandoned: 是否自动回收超时连接-->   
     <property name="removeAbandoned"  value="true"/> 

    <property name="defaultAutoCommit" value="false" />
    <property name="timeBetweenEvictionRunsMillis" value="10000" />
    <property name="minEvictableIdleTimeMillis" value="60000" />
</bean>

<!-- Hibernate配置 -->
<bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="hibernateProperties">
        <props>
            <!--  <prop key="hibernate.hbm2ddl.auto">update</prop> --> 
            <prop key="hibernate.dialect">${hibernate.dialect}</prop>
            <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
            <!--<prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
            <prop key="hibernate.cache.provider_configuration_file_resource_path">ehcache/ehcache-hibernate-local.xml</prop>
            <prop key="hibernate.cache.use_second_level_cache">true</prop> 
            <prop key="hibernate.cache.use_query_cache">true</prop>
        --></props>
    </property>

    <property name="packagesToScan" value="com.usci" ></property>

</bean>
  • 写回答

2条回答

  • 斯密德 2016-05-31 10:12
    关注

    1,网络问题
    2,数据库连接池再发生异常时候没有关闭处理。

    评论

报告相同问题?

悬赏问题

  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用