2012-03-18 77 views
5

如何在Spring(v.3.1.1)+ Hibernate(v.4.1.1)+ C3P0環境中構建/獲取ConnectionProvider如何在Spring + Hibernate + C3P0環境中構建/獲取ConnectionProvider?

背景:

在春季(v.3.1.1)+休眠(v.4.1.1)+ C3P0的環境,我想設計一個多租戶應用。休眠在新引入的多租戶功能上有很好的documentation,但仍有一些缺失的差距。在Hibernate文檔中遵循示例16.3時,我無法弄清楚如何提供ConnectionProviderMultiTenantConnectionProvider。任何提示/鏈接/想法將不勝感激。非常感謝。

回答

0

您是否可以不使用工廠方法ConnectionProviderUtils.buildConnectionProvider(String);來創建ConnectionProvider的實例,然後將其注入到MultiTenantConnectionProvider

<bean id="multiTenantConnectionProvider" class="MultiTenantConnectionProviderImpl"> 
    <property name="connectionProvider"> 
    <bean class="ConnectionProviderUtils" factory-method="buildConnectionProvider"> 
     <constructor-arg value="type"/> 
    </bean> 
    </property> 
</bean> 

或者非常接近的東西。很抱歉,我找不到ConnectionProviderUtils的全限定類名,但這兩個類屬性的參數都必須是完全限定名。

+1

而我無法找到ConnectionProviderUtils本身。 Hibernate 4.1文檔在他們的例子中沒有顯示ConnectionProviderUtils,但是他們沒有告訴從哪裏導入或者如何實現它。 – craftsman 2012-03-28 13:07:36

+0

感謝您花時間回答! – craftsman 2012-03-28 13:08:23

+0

您使用的是JNDI連接池嗎?嘗試使用org.hibernate.connection.DatasourceConnectionProvider並注入通過JNDI獲取的數據源(請參閱http://forum.springsource.org/showthread.php?13984上的第5篇文章 - Howtoto-create -a-jndi-using-彈簧數據源) – 2012-03-28 13:12:56

相關問題