這似乎是一個簡單的問題。我在Spring應用程序中有一些單元測試。數據庫包含一些oracle視圖,我只想將數據集插入到這些視圖中。 我知道可以將選項設置爲DBunit(表格類型屬性)。但我找不到單身。Unitils/DBunit/Oracle - 如何在oracle視圖中插入數據集?
是否有一些單位屬性插入數據集視圖?
謝謝你的幫助
這似乎是一個簡單的問題。我在Spring應用程序中有一些單元測試。數據庫包含一些oracle視圖,我只想將數據集插入到這些視圖中。 我知道可以將選項設置爲DBunit(表格類型屬性)。但我找不到單身。Unitils/DBunit/Oracle - 如何在oracle視圖中插入數據集?
是否有一些單位屬性插入數據集視圖?
謝謝你的幫助
好吧,我想我找到一種方法來配置單元。但是那需要一些java代碼。我已經測試過這個解決方案,它似乎工作。
首先我覺得在unitils一些屬性(unitils.properties):
unitils.module.dbunit.className=org.unitils.dbunit.DbUnitModule
unitils.module.dbunit.runAfter=
unitils.module.dbunit.enabled=true
所以它似乎是可以覆蓋DBUnitModule這樣
public class DbUnitModule extends org.unitils.dbunit.DbUnitModule implements Module {
/*
* (non-Javadoc)
*
* @see org.unitils.dbunit.DbUnitModule#getDbUnitDatabaseConnection(java.lang.String)
*/
@Override
public DbUnitDatabaseConnection getDbUnitDatabaseConnection(final String schemaName) {
DbUnitDatabaseConnection dbConnection = super.getDbUnitDatabaseConnection(schemaName);
dbConnection.getConfig().setProperty("http://www.dbunit.org/properties/tableType", new String[] { "VIEW", "TABLE" });
return dbConnection;
}
}
然後修改unitils.properties中的配置。
插入只能在'簡單'視圖(僅基於一個表的視圖)上執行。您不能將記錄插入作爲多個表上的連接結果的視圖中。你需要做的第一件事是確定你是否可以插入到視圖中。 – 2011-04-29 13:23:29
也許你想添加數據到實際用於視圖的表中...... – Cris 2011-04-29 13:59:11
那麼,視圖被切換到db中的不同表集合而無需修改java代碼... – Samuel 2011-04-29 14:12:34