Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

MethodeBeschreibung
create

Mit Hilfe dieser Methode kann ein typisiertes Query-Object angelegt werden, mit dessen Hilfe Datenbankabfragen ausgeführt werden können. Dabei wird auf eine abstrakte Query-Language zurückgegriffen, Abfragen mit SQL-Syntax sind nicht möglich. Die übergebene Klasse muss vom Typ BusinessObject sein. Das Query-Object als Rückgabewert ist ebenfalls typisiert und muss dem übergebenen BusinessObject entsprechen. Zum Ausführen der Query muss die unten beschriebene execute()-Methode verwendet werden.

Codeblock
public static <T extends BusinessObject> Query<T> create(Class<T> type) {
   return getService().createQuery(type);
}

Ein Beispiel finden Sie hier.

execute

Diese Methode führt eine typisierte Query auf der Datenbank aus. Da die Suchabfrage generell mehrere Ergebnisse zurückliefern kann, ist der Rückgabewert vom Typ List. Diese ist ebenfalls typisiert und bei keinem gefundenen Treffer leer, aber nicht null.

Codeblock
public static <T extends BusinessObject> List<T> execute(Query<T> query) {
   return getService().executeQuery(query);
}

Ein Beispiel finden Sie hier.

getById

Diese Methode ermöglicht die Suche nach einem konkreten Datenbankeintrag. Dazu muss der Typ und die Id angegeben werden. Wird kein Element gefunden, ist der Rückgabewert null.

Codeblock
public static <T extends BusinessObject> T getById(Class<T> type, Long id) {
   return getService().getById(type, id);
}

Ein Beispiel finden Sie hier.

getByProcess

Diese Methode ermöglicht die Suche nach Datenbankeinträgen, die einer bestimmten Aktion zugeschrieben sind. Jede Aktion in Nuclos gehört zu einer Entitäten. Bei der Suche nach Einträgen muss deshalb die Entität nicht extra angegeben werden. Zwingend erforderlich dagegen ist die Angabe mindestens einer Aktion.

 

Codeblock
public static <PK, T extends Stateful & BusinessObject<PK>> List<T> getByProcess(Process<T> process, Process<T>... additionalProcesses) throws BusinessException;

Ein Beispiel finden Sie hier.

getByState

Diese Methode ermöglicht die Suche nach Datenbankeinträgen, die einen bestimmten Status besitzen. Da ein Status immer einem Statusmodell angehört, das von mehreren Entitäten werden kann, ist die Angabe einer Entität notwendig. Weiterhin muss mindestens ein Status der Suche übergeben werden.

 

Codeblock
public static <PK, T extends Stateful & BusinessObject<PK>> List<T> getByState(Class<T> type, State state, State... additionalStates) throws BusinessException 

Ein Beispiel finden Sie hier.

 

Queries und SearchExpressions

...