4
我試圖連接到Play 2.0中的多個數據庫。這裏是我的application.conf看起來像:玩! Framework 2.0連接到多個數據庫
db.default.driver= com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost:3306/scg2?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&autoreconnect=true"
db.default.user=root
db.default.jndiName=DefaultDS
db.scg2_shard1.driver= com.mysql.jdbc.Driver
db.scg2_shard1.url="jdbc:mysql://localhost:3306/scg2_shard1?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&autoreconnect=true"
db.scg2_shard1.user=root
db.scg2_shard1.jndiName=ShardDS_1
而這裏的persistence.xml中的樣子
<persistence-unit name="defaultPersistenceUnit" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<non-jta-data-source>DefaultDS</non-jta-data-source>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
<persistence-unit name="shardPersistenceUnit_1" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<non-jta-data-source>ShardDS_1</non-jta-data-source>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
的連接被正確初始化,我可以正確地執行SELECT查詢。但是,任何插入或更新似乎都不適用於「scg2_shard1」連接(所有工作都在「默認」連接上)。任何指示什麼即時通訊做錯了,我應該從哪裏開始尋找糾正這個問題?
順便說一句,我想補充:我堅持使用JPA.em()對象的持久(實體)(默認)和JPA.em( 「scg2_shard1」。 ).persist(實體)(用於分片) – user1439306
您是否收到錯誤或什麼?你確定數據庫用戶有正確的權限嗎? –
數據庫用戶具有正確的權限。但是,經過進一步調查,我找出了問題所在。 – user1439306