Initialisieren der Datenbank

Um über ein Programm Objekte in einem Datenbank verwalten zu können, muss das Programm eine Verbindung zu der Datenbank aufbauen. Dieser Artikel erklärt, wie diese Verbindung mit APersist geschaffen wird.

Für die Verbindung mit der Datenbank, werden folgene Informationen/Objekte benötigt:

  • Der Name der Datenbank
  • Die Version der Datenbank
  • Der Kontext der Anwendung (android.content.Context)
  • Die DbRegistry (siehe: Implementierung eines DAOs Abschnitt 3. Anmelden des DAOs)

Bei den von APersist verwendeten Datenbanken handelt es sich um SQLite-Datenbanken, wie sie im Anroid-Kontext verwendet werden. Das Anlegen der Datenbank unter einem bestimmten Naben wird also vollständig vom Framework übernommen und muss nicht separat durch den Nutzer vorgenommen werden.

Die Version dient zur unterscheidung unterschiedlicher Versionsstände. Sollte sich an den bestehenden Entitäten etwas ändern oder eine neue Entität hinzukommen, so muss die Version inkrementiert werden.

Zur Initialisierung der Datenbank steht eine Factory zur Verfügung: com.ng.apersist.DBFactory

Diese Factory stellt eine Methode createDatabase( context, name, dbRegistry, version ) bereit, über die ein Datenbank-Objekt erzeugt werden kann.

Folgendes Beispiel zeigt die Initialisierung eines Datenbank-Objektes in einer Methode init( context, name, registry, version):

private Database init(Context ctx, String dbName, DbRegistry reg, String version){
    return DbFactory.getInstance().createDatabase(ctx, dbName, reg, version);
}

 

Schreibe einen Kommentar