2012-04-15 65 views
5

我正在開發Android 3.1及更高版本。在Android項目上實現DAO模式

我有以下軟件包:

enter image description here

es.viacognita.models含有類存儲與Web服務檢索到的數據。當我獲得所有的Web服務數據時,我需要將其插入到數據庫中。

爲了使它正確,我以爲使用DAO模式,但我不知道該怎麼做。

如果我使用DAO模式,可能需要使用es.viacognita.models類嗎?我認爲這些課程將成爲DAO課程,不是嗎?

我必須在哪裏實現插入,更新或刪除?在DBManager類?

回答

5

您可以實現插入,更新,刪除等所有操作在DBManager類或創建一個單獨的類DAO它做所有你想在數據庫上執行的操作...

public class DAO { 
private SQLiteDatabase database,customdb; 
private DBManager dbHelper; 



public DAO(Context context) { 
    dbHelper = new DBManager(context); 
} 
public void open() throws SQLException { 
    database = dbHelper.getWritableDatabase(); 

} 
public void close() { 
    dbHelper.close(); 
} 
//insering,deleting and all other operations you want to perforem on the database 
    } 
+0

謝謝您的回答。我還有一個問題:我如何實現交易?謝謝。 – VansFannel 2012-04-15 15:05:09

+0

你是什麼意思交易?插入,刪除和其他操作? – 5hssba 2012-04-15 15:06:42

+0

是的。我必須插入很多表,如果其中一個失敗了,我必須撤消所有以前的插入。 – VansFannel 2012-04-15 15:13:44

2

我會使用DBManager的命名空間。我把你的模型類視爲商業實體類,併爲DAO(DAL)層創建一個單獨的庫。使用這種方法,您可以將業務邏輯與數據訪問層分開。