How to configure Hibernate statistics in Spring 3.0 application?

前端 未结 2 1881
死守一世寂寞
死守一世寂寞 2021-01-01 00:44

How do we configure such that we obtain Hibernate statistics through JMX in Spring MVC based web applications. Is there any better way of tracking Hibernate performance.

相关标签:
2条回答
  • 2021-01-01 01:32

    Thanks Bozho for your inputs. I made two changes as specified below.

     <bean id="jmxExporter"  class="org.springframework.jmx.export.MBeanExporter"         lazy-init="false">    
        <property name="server" ref="mbeanServer" /> 
         <property name="beans">    
        <map>  
              <entry key="Qvantel:name=hibernateStatistics" 
               value-ref="hibernateStatisticsMBean" />   
        </map>  
        </property>  
        <property name="registrationBehaviorName" value="REGISTRATION_REPLACE_EXISTING" />  
        </bean>  
    
    0 讨论(0)
  • 2021-01-01 01:37

    Set hibernate.generate_statistics to true (either in persistence.xml or in hibernate.cfg.xml or in your session factory bean configuration). Then register this bean:

    <bean id="hibernateStatisticsMBean" class="org.hibernate.jmx.StatisticsService">
        <property name="statisticsEnabled" value="true" />
        <property name="sessionFactory" value="#{entityManagerFactory.sessionFactory}" />
    </bean>
    

    (If you are not using JPA, just specify your sessionFactory bean instead of getting it through the EMF)

    And finally you need an mbean server and exporter:

    <bean id="mbeanServer" class="org.springframework.jmx.support.MBeanServerFactoryBean">
        <property name="locateExistingServerIfPossible" value="true" />
    </bean>
    
    <bean id="jmxExporter" class="org.springframework.jmx.export.MBeanExporter"
        lazy-init="false">
        <property name="server" ref="mbeanServer" />
        <property name="registrationBehaviorName" value="REGISTRATION_REPLACE_EXISTING"/>
        <property name="beans">
            <map>               
                <entry key="yourkey:name=hibernateStatistics" value-ref="hibernateStatisticsMBean" />
            </map>
        </property>
    </bean>
    
    0 讨论(0)
提交回复
热议问题