Как настроить пул соединений с помощью Spring и Hibernate?
Спасибо
Вену
Как настроить пул соединений с помощью Spring и Hibernate?
Спасибо
Вену
Вы можете использовать компонент DBCP
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="initialSize" value="10" />
<property name="maxActive" value="5" />
<property name="maxWait" value="5000" />
</bean>
<!-- Hibernate Configuration -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"
p:dataSource-ref="dataSource">
<property name="annotatedClasses">
<list>
<value>com.project.domain.Domain1</value>
<value>com.project.domain.Domain1</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
${hibernate.dialect}
</prop>
<prop key="hibernate.show_sql">
${hibernate.show_sql}
</prop>
<prop key="hibernate.generate_statistics">
${hibernate.show_statistics}
</prop>
</props>
</property>
</bean>
org.apache.commons.dbcp2.BasicDataSource
- person Andremoniy; 19.04.2017
В Hibernate вы можете настроить пул соединений CP30 в Hibernate. Просмотрите руководство здесь . У IBM есть хорошее руководство по интеграции Hibernate со Spring.
Если вы хотите использовать Best среди всех поставщиков пула соединений Java, попробуйте HikariCP. Настройте bean-компонент источника данных, используя HikariCP в контексте сервлета, как:
<beans:bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
<beans:property name="dataSourceClassName" value="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"/>
<beans:property name="maximumPoolSize" value="5" />
<beans:property name="maxLifetime" value="30000" />
<beans:property name="idleTimeout" value="30000" />
<beans:property name="dataSourceProperties">
<beans:props>
<beans:prop key="url">jdbc:mysql://localhost:3306/exampledb</beans:prop>
<beans:prop key="user">root</beans:prop>
<beans:prop key="password"></beans:prop>
<beans:prop key="prepStmtCacheSize">250</beans:prop>
<beans:prop key="prepStmtCacheSqlLimit">2048</beans:prop>
<beans:prop key="cachePrepStmts">true</beans:prop>
<beans:prop key="useServerPrepStmts">true</beans:prop>
</beans:props>
</beans:property>
</beans:bean>
Затем используйте этот источник данных для создания bean-компонента EntityManagerFactory.
Если вы работаете в контейнере веб-приложения, используйте встроенный пул соединений вашего контейнера.
В противном случае используйте Apache DBCP: http://commons.apache.org/dbcp/