hibernate性能优化记录

之前自己搭建的一个关于SSH(spring+springMVC+hibernate3)的框架,但是存在不完整的地方,项目在上线运行过程中存在访问速度慢的,时常存在页面卡顿的情况。
 导致页面反应慢的原因:
   1.项目框架搭建不够好;
   2.数据库访问缓慢(安装在阿里云的mysql数据库所在服务器内存不够,直接使用navicat查询,也会存在卡顿)
项目优化:
     1.hibernate 添加连接池配置
  上一篇记录application.xml文件关于hibernate配置 替换为
        <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"></property>
        <property name="hibernateProperties">
            <props>
                <!-- <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> --> <!-- 方言 -->
                   <!--导入上面咱自定义的类--> 
                <prop key="hibernate.dialect">com.MySQLExtendDialect</prop> 
                <!-- <prop key="hibernate.hbm2ddl.auto">update</prop>-->
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.format_sql">true</prop>

                <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
                <!-- 开启二级缓存  开启二级缓存,实体对象文件*.hbm.xml中需在class后紧跟cache  如:<class name="com.entity.equipment.xxx" table="xxx"> <cache usage="read-write"/> 项目中涉及到修改 所以usage 使用的read-write 若只存在查询可使用read-only-->  
                <prop key="hibernate.cache.use_second_level_cache">true</prop>  
                <!-- 开启查询缓存 -->  
                <prop key="hibernate.cache.use_query_cache">true</prop>  

                <prop key="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</prop>    <!--初始化连接数-->
                <prop key="initialPoolSize">30</prop>
                 <!--最大连接数-->
                <prop key="hibernate.c3p0.max_size">60</prop>   
                <!--最小连接数--> 
                <prop key="hibernate.c3p0.min_size">10</prop> 
                <!--连接超时时间-->   
                <prop key="hibernate.c3p0.timeout">120</prop>    
                <prop key="hibernate.c3p0.max_statements">100</prop>    
                <prop key="hibernate.c3p0.idle_test_period">120</prop>    
                <prop key="hibernate.c3p0.acquire_increment">2</prop> 
                <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
                <prop key="acquireIncrement">3</prop>
                <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 -->
                <prop key="acquireRetryAttempts">30</prop>
                </props>
        </property>
        <property name="mappingDirectoryLocations">
            <value>classpath:mapper/</value>
        </property>
    </bean>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值