我的應用程序背後的想法是通過下載整個.mdb文件到客戶端,通過記錄他們所做的修改和上傳,每天一次,每次這些變化放逐客戶對我的數據庫(這是的.mdb格式)直接訪問客戶。 我遇到的問題是使用ucanaccess時,它似乎每次調用getDatabase2()時都會加載整個數據庫。在控制檯,這是我得到無限次,直到應用程序已加載。 (這將花費很多時間)。 是否有任何使ucanaccess做橋接的東西(只是交易)?或者也許我正在使用錯誤的方案? .mdb文件大小爲50Mo,最大條目數爲80-100k。 我使用Windows XP時,Eclipse,Java 7中 爲getDataBase代碼如下ucanaccess超載系統,該怎麼辦?
private static Connection getDatabase2() throws Exception{
String url="jdbc:ucanaccess:////Jv1kbafap001/teams/Medic/database.mdb;memory=false";
String user="admin";
String pass="";
return DriverManager.getConnection(url,user,pass);
}
謝謝你關於加載時間的平視。但是,我無法理解「重新映射連接參數以覆蓋原始外部數據庫路徑」?你的意思是不同的網址設置?編輯:真棒的想法(過濾器MDB和鏈接表)我會得到它 – 2014-09-29 13:00:42
我不知道你是否真的需要這個(它是有用的,例如,替換unix/linux操作系統上的鏈接數據庫路徑'),但語法是: JDBC:ucanaccess:// <過濾MDB的路徑>; <獲取作爲設置好的鏈接數據庫路徑>重新映射= | <客戶端上的真實鏈接數據庫路徑> 例如 JDBC:ucanaccess:///opt/filter.mdb;重新映射= C:/db/database.mdb | /opt/database.mdb;存儲器=假 – jamadei 2014-09-29 14:38:14
阿確定我認爲這是窗下使用並行方式,謝謝你的好意的想法,建立一個鏈接數據庫確實減少25%的加載時間ATLEAST,而不是檢查整個數據庫,它只是抓住了表的鏈接 – 2014-09-29 14:43:50