com.pecasim.base.database
Interface Database

All Known Subinterfaces:
DatabaseManager
All Known Implementing Classes:
HibernateDatabaseManager

public interface Database

Schnittstelle zur Datenbank. Diese Schnittstelle ist für den Benutzer gedacht und kann von ihm frei verwendet werden um, Objekte aus der Datenbank zu beziehen und neue Objekte anzulegen. Ein erweitertes Feature ist das Aufrufen von Datenbank-Funktionen.

Author:
cbu

Method Summary
 int executeUpdate(java.lang.String anHQLQuery, java.lang.Object... aParameterList)
          Führt eine HQL-Query auf der Datenbank aus und liefert die Anzahl an aktualisierten Datensätzen.
<T> java.util.List<T>
get(java.lang.Class<? extends T> aClass, int aBegin, int aLength)
          Liefert eine Liste von Subjekte der übergebenen Klasse.
<T> T
get(java.lang.Class<? extends T> aClass, long aId)
          Liefert ein Subjekt der übergebenen Klasse mit der angegebenen ID
<T> java.util.List<T>
get(java.lang.Class<? extends T> aClass, java.lang.String anHQLQuery)
          Liefert eine Liste von Subjekten der übergebenen Klasse.
 boolean makeSnapshot()
          Macht einen Snapshot der Domain-Tabellen in der Datenbank.
 boolean performFunction(java.lang.String aFunction)
          Führt die übergebene Funktion auf der Datenbank aus.
 void store(java.lang.Object aObject)
          Speicher ein Objekt in einer Transaktion der Datenbank
 

Method Detail

get

<T> java.util.List<T> get(java.lang.Class<? extends T> aClass,
                          java.lang.String anHQLQuery)
Liefert eine Liste von Subjekten der übergebenen Klasse. Das Einschränkende-Kriterium wird als String in Psydo-SQL formuliert (Hibernate-Syntax).

Parameters:
aClass: - != null
anHQLQuery: - != null
Returns:
List of aClass-Objects: -> null

get

<T> java.util.List<T> get(java.lang.Class<? extends T> aClass,
                          int aBegin,
                          int aLength)
Liefert eine Liste von Subjekte der übergebenen Klasse. Hierbei werden alle Objekte selektiert und ein Paging auf dieser Liste ausgeführt.

Parameters:
aClass: - != null
aBegin: - >= 0
aLength - >= 0 & >= aBegin
Returns:
List of aClass-Objects: -> null

get

<T> T get(java.lang.Class<? extends T> aClass,
          long aId)
Liefert ein Subjekt der übergebenen Klasse mit der angegebenen ID

Parameters:
aClass: - != null
aId: - long
Returns:
aClass-Object: -> null

executeUpdate

int executeUpdate(java.lang.String anHQLQuery,
                  java.lang.Object... aParameterList)
Führt eine HQL-Query auf der Datenbank aus und liefert die Anzahl an aktualisierten Datensätzen. Zusätzlich können Parameter angegeben, die mit den '?' in der Query ersetzt werden. z.B executeUpdate("update Person p set p.age=?", 12);

Parameters:
anHQLQuery: - String != null
aParameterList: - -> null
Returns:
int

store

void store(java.lang.Object aObject)
Speicher ein Objekt in einer Transaktion der Datenbank

Parameters:
aObject: - != null

performFunction

boolean performFunction(java.lang.String aFunction)
Führt die übergebene Funktion auf der Datenbank aus.

Parameters:
aFunction: - != null
Returns:
boolean (ob die Funktion ausgeführt werden konnte)

makeSnapshot

boolean makeSnapshot()
Macht einen Snapshot der Domain-Tabellen in der Datenbank. Dies wird von der DB-Funktion makeSnapshot() durchgeführt.

Returns:
boolean (erfolgreich durchgeführt)