在多个活动中访问ormlite存储库时应该有多个实例,单例,还是什么?

时间:2011-09-01 17:16:40

标签: android ormlite

我正在使用James Morgan的DemoORMLiteAndroid提供的示例,该示例包含一个实例化存储库的活动。

供参考

public class Repository {
    private Dao<Room, Integer> roomDao;

    public Repository(final DatabaseHelper databaseHelper) {
        this.roomDao = getRoomDao(databaseHelper);
        ...

和活动

public class RoomActivity extends OrmLiteBaseListActivity<DatabaseHelper> {
    private Repository repository;
    @Override
    public void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.repository = new Repository(getHelper());
    }
        ...
        this.repository.clearData();
        ...etc..

如何在其他活动或类中访问存储库?

1 个答案:

答案 0 :(得分:0)

我不确定这是一个很好的答案@Kevin但是现在好了。

ORMLite有几个基类可以帮助引导Android数据库。

  • OrmLiteBaseActivity
  • OrmLiteBaseActivityGroup
  • OrmLiteBaseListActivity
  • OrmLiteBaseService
  • OrmLiteBaseTabActivity

以下是他们的Javadoc:http://ormlite.com/javadoc/ormlite-android/

所有这些基类都提供了实用程序方法,可帮助管理扩展OrmLiteSqliteOpenHelperDatabaseHelper类。您只需要一个辅助类的实例,因为它管理与使用onCreate()方法传入的数据库的连接。

onCreate()方法是传递与应用程序关联的Android SQLiteDatabase的方法,这是ORMLite在其数据库连接代码中包装所需的。

如果您更具体地询问您要完成的工作,我会编辑我的回复以包含更多信息。