2017-02-07 16 views
1

我有一個junit測試類,其中我必須指定新的持久單元名稱假設說「B」連接到數據庫的屬性。從這個測試類中,我調用一個JPA REST服務,該服務又調用一個業務邏輯java類。在這個業務邏輯類中,我寫了entitymanager與持久化xml單元假設說「A」。如何覆蓋將在其他java類中使用的junit類中的持久性xml文件?

這裏的問題是我如何在junit測試類中指定持久單元B,以便業務類使用持久單元B而不是A?

+0

持久性單元在文件persistence.xml中指定,不在類中。定義更好的意思 –

+0

我們可以在類中指定一個新的持久性單元,如下所示: http://stackoverflow.com/a/18733128 我已經檢查了這個,但沒有爲我工作。請理解有問題的問題。 – agrawalsp

+0

這不是一個「新的持久性單元」。這是具有一些額外屬性的SAME持久性單元,它們覆蓋了persistence.xml中指定的那些屬性。 –

回答

0

您可以覆蓋你的

的src /主/資源/ META-INF/persistence.xml中

的src \測試\資源\ META-INF \ persistence.xml

+0

我看到了這個,但問題是,我的junit類需要src/main/resources/META-INF/persistence.xml而不是src \ test \ resources \ META-INF \ persistence.xml,我想因爲我需要指定這條道路某處。 – agrawalsp

+0

您使用哪個框架進行JPA單元測試?只有junit? – jklee

相關問題