weixin_42308597 2009-04-28 15:35
浏览 246
已采纳

struts2 spring hibernate3 连mysql问题

我用struts2+spring+hibernate3连数据库mysql,只要访问8次action,ie就停顿了,就一直在加载,控制台也没反应。只能重启服务器tomcat,重启之后也只能访问8次。mysql中最大连接数配置max_connections=1024
spring-common.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
    <bean id="dataSource"
    class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName">
            <value>com.mysql.jdbc.Driver</value>
        </property>
        <property name="url">
            <value>jdbc:mysql://localhost:3306/facebs?useunicode=true&amp;characterEncoding=utf-8</value>
        </property>
        <property name="username">
            <value>root</value>
        </property>
        <property name="password">
            <value>344</value>
        </property>
    </bean>
    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
    >
        <property name="mappingResources">
            <list>
                <value>com/idbao/common/hibernate/AccountState.hbm.xml</value>
<!--........省略一部分<value>-->           </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">
                    org.hibernate.dialect.MySQLDialect
                </prop>
                <prop key="hibernate.show_sql">
                    true
                </prop>
                <prop key="hibernate.c3p0.min_size">5</prop> 
                <prop key="hibernate.c3p0.max_size">20</prop> 
                <prop key="hibernate.c3p0.timeout">1800</prop> 
                <prop key="hibernate.c3p0.max_statements">50</prop> 
            </props>  
        </property>
        <property name="dataSource">
            <ref bean="dataSource"/>
        </property>
        
                

        
    </bean>
    <bean id="hibernateTemplate"
    class="org.springframework.orm.hibernate3.HibernateTemplate">
        <property name="sessionFactory">
            <ref bean="sessionFactory"/>
        </property>
    </bean>
    <bean id="transactionManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory">
            <ref bean="sessionFactory"/>
        </property>
    </bean>
    <bean id="smsUtil" class="com.idbao.common.util.SmsUtil">
    </bean>
</beans>

 spring-service.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
    
    <bean id="memberInfoServiceTarget" 
        class="com.idbao.member.service.impl.MemberInfoServiceImpl">
        <property name="memberInfoDao">
            <ref bean="memberInfoDao"/>
        </property>
        <property name="smsUtil">
            <ref bean="smsUtil"/>
        </property>
    </bean>
    
    <bean id="memberInfoService"
        class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
        lazy-init="true">
        <property name="transactionManager">
            <ref bean="transactionManager" />
        </property>
        <property name="transactionAttributes">
            <props>
                <prop key="*">PROPAGATION_REQUIRED, -MemberInfoException</prop>
            </props>
        </property>
        <property name="target">
            <ref bean="memberInfoServiceTarget"/>
        </property>
    </bean>
<!--.....省略一部分bean-->
</beans>

  
daoImp.java

public class daoImpl implements dao {
    private HibernateTemplate hibernateTemplate;
    public void setHibernateTemplate(HibernateTemplate hibernateTemplate){
        this.hibernateTemplate=hibernateTemplate;
    }
    public CateringBaseParameter findCatering(Integer id) throws DataAccessException {
        List list=hibernateTemplate.find("from CateringBaseParameter where id=?",id);
        if(list.size()!=0)
            return (CateringBaseParameter) list.get(0);
        return null;
    }
}

 

请指教有什么错误,不胜感激!

  • 写回答

2条回答 默认 最新

  • wanghaolovezlq 2009-04-28 16:33
    关注

    八成是你的数据库连接没有及时的释放,访问8次action,就取了8个连接,就挂在那边了,

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?