【问题标题】:Architecture of Android application with simple database具有简单数据库的 Android 应用程序架构
【发布时间】:2012-05-01 02:36:19
【问题描述】:

我想构建一个相当简单的 Android 应用程序。 我的应用程序的基本数据模型由几个基本元素以及它们之间的关系组成。

我希望数据是持久的,所以我正在考虑使用 sqlite DB。 我查看了 Android Developer 网站,发现与我的问题最接近的内容是“NotePad Tutorial”,它使用 sqlite DB 来存储笔记。

我想现在我已经掌握了基础知识,但我仍然有一些问题:

  1. 在本教程中,他们在数据库中只有一个表。如果我的应用程序需要更复杂的方案 - 我是否仍应使用相同的方法?也就是说 - 将所有内容放在SQLiteOpenHelper 的子类中?还是有更“结构化”的方式?
  2. 我是否应该为存储在我的数据库中的所有数据元素创建类?我的意思是这是我了解到我应该做的事情,但在文档中没有关于这一点的提示。
  3. 如果我应该创建类 - 我应该如何正确使用它们?我的意思是,由于查询的结果是 Cursor 对象,而不是行的集合,我应该/可以将其解析为对象吗?

谢谢!

【问题讨论】:

  • 你可以看看ormlite.com它是android的轻量级orm层。可能您发现使用此解决方案比手动使用 SQLite 更容易。

标签: java android database sqlite architecture


【解决方案1】:
  1. 在同一个子类中定义所有表,这样可以很容易地在一个地方查看所有表,并可能编写 SQL 进行升级等

  2. 是的,这样在java端更容易操作,代码更干净

  3. 从游标中读取并一个一个地初始化一个对象的arraylist。

【讨论】:

  • 你能详细说明一下光标吗?因为例如在 ListView 中呈现数据时,我仍然想要光标的效率。我还能这样做吗?
猜你喜欢
  • 2012-01-18
  • 2012-02-18
  • 1970-01-01
  • 2016-02-09
  • 1970-01-01
  • 1970-01-01
  • 2011-09-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多