Gør det ikke sådan. Konfigurer den datakilde, du vil bruge i foråret såvel som i dvale. Glem hibernate.dbcp og hibernate.connection ejendomme.
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/app"/>
<property name="username" value="foo"/>
<property name="password" value="bar"/>
// Other DBCP properties here
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource"
<property name="packagesToScan">
<list>
<value>com.my.app.model</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
Bare tilføj dataSource egenskab til din AnnotationSessionFactoryBean som afhængighed og gjort. Bemærk, at du ikke har brug for configurationClass egenskab, da den allerede er annotationsbaseret.
Et tip, jeg ikke vil foreslå at bruge Commons-DBCP længere som en datakilde i stedet for at tage et kig på HikariCP som en bedre implementering af datakilder.
For mere information om at integrere/konfigurere Hibernate med Spring foreslår jeg dette afsnit i referencevejledningen.