Allgemein

Der DatasourceProvider ist eine Hilfsklasse, die alle notwendigen Methoden zur Ausführung eines Datenquellen-Abfrage beinhaltet.

Funktionsumfang

 

MethodeBeschreibung
run

Diese Methode ermöglicht die Ausführung einer Datenbankabfrage. Im Methodenaufruf muss die Datenquelle aus "Report und Formular" angegeben werden.

Der Rückgabewert der Methode ist ein DatasourceResult-Objekt, das die gefundenen Treffer (rows) und die abfragbaren Spalten (columns) beinhaltet.

public DatasourceResult run(Class<? extends Datasource> datasourceClass) throws BusinessException;

Für eine Datenabfrage können u.U. Parameter zur Präzisierung der Abfrage notwendig sein. In diesem Fall gibt es eine zweite run-Methode(), die eine Map mit den Werten an die Abfrage weiterleiten kann:

public DatasourceResult run(Class<? extends Datasource> datasourceClass, Map<String, Object> params) throws BusinessException;

 

Das DatasourceResult - Objekt stellt das Suchergebnis der Datenbankabfrage dar. Hauptbestandteile sind:

  • rows (Gefundene Zeilen/Treffer der angegebenen Datenbankabfrage; Jede Zeile wird als Object[] -Array dargestellt, wobei jedes Object in diesem Array den Inhalt der entsprechenden Spalte aufnimmt)
  • cols (Spalten vom Typ DatasourceColumn, welches die Metainformationen Spaltenname und Spalten-Datentyp beinhaltet; Jede gefundene Zeile/row besitzt die hier hinterlegten Spalten)

Die Abfrage der Ergebnisse basiert auf folgendem Prinzip: Iteriert werden die Ergebnisse mittels getRow(Zeilenindex). Jede Zeile wird als Object[] Array zurückgeliefert. Möchte man auf einen bestimmten Spaltenwert in diesem Object[] typisiert zugreifen, erhält man mittels Aufruf getColumns().get(Spaltenindex) die Metainformation der gewünschten Spalte und kann den Wert getRow(Zeilenindex)[Spaltenindex] dem Klassentyp entsprechend casten oder mit dem Spaltennamen beschriften.

Ein Beispiel finden Sie hier.

 

 

  • Keine Stichwörter