Tach auch, ich bin seit nunmehr einem halben Jahr auch mal wieder online, natürlich bringe ich eine neue Problemstellung mit
Folgendes: ich schreibe gerade eine generische Klasse
(bitte lasst das nicht wieder in eine Diskussion zum Thema Interface mit I oder ohne I ausarten...), welche eine beliebige Datenquelle repärsentiert. Also solche sollte man natürlich die Möglichkeiten haben, sich irgendwie mit der Datenbasis zu verbinden sowie eine Abfrage der Daten vorzunehmen.
Aktuell bastle ich an einer implementierenden Klasse herum, welche ein JDBC-DataSet ist. Zunächst mach ich also eine ganz normale Datenbankabfrage über ein
. Nun wird´s allerdings schwierig. Das
soll in eine neue Datenstruktur überführt werden (nennen wir sie mal
). Um eine neue Tabelle zu erstellen, brauch ich erstmal ein paar Metainformationen, also wenigstens die Namen der Spalten sowie deren Datentypen. Letztere brauch ich v.a. um später mit der richtigen
-Methode die Daten aus dem
herauszubekommen. Also dachte ich, schreibst doch einfach mal eine Art WrapperKlasse, welche eine
besitzt, in der zu jedem möglichen (SQL-)Datentyp die benötigte Methode drinsteht. Nur hier hackt´s dann halt, da ich von Reflection und Co. - nunja, sagen wir mal so, es gab bisher einfach wichtigeres auf meiner TODO-Liste...
Nur wie baut man eine solche Klasse und v.a. wie führt man die benötigten Methoden dann aus? Die Klasse
hab ich ja schonmal gefunden, aber irgendwie kann ich mit der nix angfangen.
Bisher sieht die Klasse etwas so aus:
Kann mir bitte jemand bei dieser Fragestellung ein wenig unter die Arme greifen?
Danke schonmal
Wirsing
Folgendes: ich schreibe gerade eine generische Klasse
Code:
IDataSet
Aktuell bastle ich an einer implementierenden Klasse herum, welche ein JDBC-DataSet ist. Zunächst mach ich also eine ganz normale Datenbankabfrage über ein
Code:
ResultSet
Code:
ResultSet
Code:
AbstractTable
Code:
getXXX()
Code:
ResultSet
Code:
HashTable
Nur wie baut man eine solche Klasse und v.a. wie führt man die benötigten Methoden dann aus? Die Klasse
Code:
java.lang.reflect.Method
Bisher sieht die Klasse etwas so aus:
Java:
package misc;
import java.lang.reflect.Method;
import java.math.BigDecimal;
import java.sql.Types;
import java.util.Date;
import java.util.Hashtable;
public class SQLValueWrapper {
private static Hashtable<Integer, Method> types = new Hashtable<Integer, Method>();
static{
types.put(Types.BOOLEAN, hmmmm... was nun);
}
}
Kann mir bitte jemand bei dieser Fragestellung ein wenig unter die Arme greifen?
Danke schonmal
Wirsing