spring DriverManagerDataSource打开了很多连接?

use*_*403 5 java connection spring hibernate connection-pooling

我正在使用spring和hibernate独立应用程序.我正在使用以下配置.

<bean id="dataSource"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${driverClassName}" />
        <property name="url" value="${db.url}" />
        <property name="username" value="${db.username}" />
        <property name="password" value="${db.password}" />
    </bean>

    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="annotatedClasses">
            <list>
                <value>com.some.SomePojo</value>
            </list>
        </property>

        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">${mdm.db.dialect}</prop>

            </props>
        </property>
    </bean>


    <tx:annotation-driven transaction-manager="transactionManager" />

    <bean id="transactionManager"
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
Run Code Online (Sandbox Code Playgroud)

是每次请求数据时DriverManagerDataSource是否打开数据库连接?还是重用已打开的连接?它还会关闭空闲连接吗?使用连接池概念我需要c3p0吗?

谢谢!

Mar*_*ker 5

java doc说明;

该类不是实际的连接池; 它实际上并没有池连接.

有关详情,请参阅

http://static.springsource.org/spring/docs/2.0.x/api/org/springframework/jdbc/datasource/DriverManagerDataSource.html