2012-05-17 93 views
4

我可以通過代碼將某些屬性傳遞給EntityManagerFactory,但仍然將persistence.xml作爲主配置源保留嗎?使用createEntityManager的過載與Map似乎完全覆蓋persistence.xmlJPA EntityManagerFactory與persistence.xml和屬性映射

Map<String, String> propertyMap; 
factory.createEntityManager(propertyMap); 

我想配置JPA在persistence.xml,而是通過自定義連接的字符串中。我使用的是HSQL,我想用當前的用戶目錄來編寫一個自定義的DB文件路徑,我必須通過代碼來獲取(就我所知)。

這將是巨大的,如果我能保持persistence.xml反正我沒有寫一個自定義的配置機制。

+0

我會從persistence.xml中加載屬性,替換/添加所需的值,並創建從屬性EntityManager的。 – SJuan76

+1

Properties.loadFromXML – SJuan76

回答

3

你的意思是

Persistence.createEntityManagerFactory(puName, props); 

當然,除非你的意思是你所創建的EMF第一,並希望以後申請的道具?

+0

偉大的提示,沒有想到創建工廠不同。似乎工作。謝謝! –