2012-04-15 33 views
5

Android 3.1 ve üzeri sürümler geliştiriyorum.Android projesinde DAO Kalıbı Uygulaması

Aşağıdaki paketler var:

enter image description here

es.viacognita.models bir web hizmeti ile alınan verileri depolamak için sınıfları içerir. Tüm web servis verilerini aldığımda, veritabanına eklemem gerekiyor.

Doğru yapmak için DAO desenini kullanmayı düşündüm, ancak nasıl yapılacağını bilmiyorum.

Ben DAO desen kullanırsam, es.viacognita.models sınıfları kullanmak gerekebilir? Bu derslerin DAO dersleri olacağını düşünüyorum, değil mi?

Eklemeleri, güncelleştirmeleri veya silmeleri nereye uygulamam gerekiyor? DBManager sınıfında?

cevap

5

Sen DBManager sınıfında ekler, güncelleştirmeler, siler ve tüm diğer işlemleri uygulamak veya veritabanı üzerinde yapmak istediğiniz tüm işlemleri yapar ayrı sınıf Dao oluşturabilir ...

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

Teşekkür . Başka bir sorum var: işlemleri nasıl uygularım? Teşekkürler. – VansFannel

+0

İşlemler, ekleme, silme ve diğer işlemler ile ne demek istiyorsunuz? – 5hssba

+0

Evet. Çok tablo eklemek zorundayım ve bunlardan biri başarısız olursa, önceki tüm ekleri geri almam gerekir. – VansFannel

2

DBManager'ın ad alanını kullanırdım. Model sınıflarınızı iş varlık sınıfları olarak ele alıyorum ve DAO (DAL) katmanı için ayrı bir kitaplık oluşturuyorum. Bu metodolojiyi kullanarak iş mantığınızı Veri erişim katmanınızdan ayırabilirsiniz. Cevabınız için