Весна + Спящий + Весна - PullRequest
0 голосов
/ 28 июня 2011

У меня есть проект Spring и Hibernate, но он использует много соединений с моей базой данных (MYSQL).Я знаю, что мне следует реализовать C3P0 для управления подключением к пулу, но я не знаю, как?Пожалуйста, помогите мне.

Конфигурация Hibernate:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:mysql://localhost/oasis"/>
    <property name="username" value="root"/>
    <property name="password" value="mysql"/>
</bean>

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="dataSource"/>
    <property name="packagesToScan">
         <list>
            <value>com.app.oasis.model.base</value>
         </list>
    </property>
    <property name="hibernateProperties">
         <props>
            <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
            <prop key="hibernate.show_sql">true</prop>
         </props>
    </property>
</bean>

<tx:annotation-driven/>

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"/>
</bean>

Где мне добавить конфигурацию C3P0?

1 Ответ

1 голос
/ 28 июня 2011

Добавьте файл jar C3P0 (загрузить с веб-сайта c3p0 или используйте maven) в ваш путь к классам и создайте свой источник данных, используя com.mchange.v2.c3p0.ComboPooledDataSource

<bean id="dataSource"
    class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
    <property name="driverClass" value="com.mysql.jdbc.Driver"/>
    <property name="jdbcUrl" value="jdbc:mysql://localhost/oasis"/>
    <property name="user" value="root"/>
    <property name="password" value="mysql"/>
    <!-- Various configuration properties can be set here -->
</bean>
...