我正在开发带有数据库的Android应用程序。该数据库将具有三个以上的表。

现在,我正在研究一个名为DBAdapter的类,以访问SQLite数据库。

DBAdpater将为数据库中的每个表(insertEntry, removeEntry, getAllEntries, getEntryupdateEntry)提供五种方法。

因此,如果我有五个表,DBApadter将有超过二十五个方法。我觉得好大。

DBAdapter类应该如何?

谢谢。

最佳答案

您应该能够将其保留为5个公共方法和一个DBAdapter类。

创建一个ENUM类型来定义要使用的表,并添加一个包含对象的附加参数(即HashTable),该对象包含查询所需的名称/值对。这样可以使您的公共界面保持干净。

即:

DBAdaptor.insertEntry(TABLES.table1,valuesHashTable)

代替:

Table1DBAdaptor.insertEntry(arg1,arg2,arg3,arg4)

在DBAdapter内部,您可以创建一个内部类来处理每种查询类型的实现细节。

对于get方法,我不确定返回类型是什么,但是您可以创建基类并根据需要将其子类型化为其他返回类型。

07-28 03:53