Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 4 Nächste Version anzeigen »

Erstellen einer Datenbankabfrage (Query)

MethodeBeispiel
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.

boolean sortAscending = true;

Query<Auftrag> queryAuftrag = QueryProvider.create(Auftrag.class);

queryAuftrag.where(Auftrag.Auftragsnr.notNull())
            .and(Auftrag.Bestellwert.Gt(BigDecimal.ZERO))
            .orderBy(Auftrag.Auftragsnr, sortAscending);

Folgende Bedingungen können verwendet werden:

  • eq(value): gleich
  • isNull(): ist ein Nullwert
  • neq(value): ungleich
  • notNull(): kein Nullwert

Und für Numerische Attribute:

  • Gt(value): größer als
  • Gte(value): Größer als oder gleich
  • Lt(value): kleiner als
  • Lte(value): kleiner als oder gleich

Weitere Informationen finden sich in folgenden Klassen (unter api.nuclos.de):

org.nuclos.api.businessobject.attribute.Attribute<T>
org.nuclos.api.businessobject.attribute.NumericAttribute<T>
execute

Diese Funktion führt eine Query aus und gibt eine typisierte Liste als Ergebnis zurück.

List<Auftrag> results = QueryProvider.execute(queryAuftrag);
for (Auftrag a :results) {
	BigDecimal bestellwert = a.getBestellwert();
}

Auslesen eines einzelnen Eintrages

MethodeBeispiel
getById

Mit Hilfe dieser Methode kann ein einzelnes BusinessObject anhand des Typs und der Id ausgelesen werden.

// die Variable 'auftrag' stellt ein BusinessObject des Typs 'Auftrag' dar und besitzt eine Referenz auf ein Kundenobjekt
Kunde k = QueryProvider.getById(Kunde.class, auftrag.getKundeId());
  • Keine Stichwörter