hallo zusammen,
also,micht bringt nun seit Tagen folgendes Prob zur Verzweiflung:
und zwar schaffe ich es nicht,dass ich Daten aus einer HashMap (Datenbank) in eine Tabelle schreibe. sagt mit immer eine NullPointer.... beim TableModel (siehe unten).
bin für jeden Tipp sehr dankbar,
lg max
und jetzt das Tabellen-Model:
also,micht bringt nun seit Tagen folgendes Prob zur Verzweiflung:
und zwar schaffe ich es nicht,dass ich Daten aus einer HashMap (Datenbank) in eine Tabelle schreibe. sagt mit immer eine NullPointer.... beim TableModel (siehe unten).
bin für jeden Tipp sehr dankbar,
lg max
Code:
.
.
DataManager dm = DataManager.getInstance();
.
.
public void initMrTable() {
HashMap hm = null;
try {
hm = dm.getMessreihen(); //Hier werde Daten aus DB ausgelesen u HashMap überg.
}
catch (SQLException ex) {
JOptionPane.showMessageDialog(this, "Fehler beim Laden der Messreihen!", "Laden", JOptionPane.ERROR_MESSAGE );
}
if (hm!=null) {
Iterator i = hm.keySet().iterator();
while (i.hasNext()) {
Integer key = (Integer) i.next();
tmMR = new TableModelMR(hm);
mrTable.setModel(tmMR);
System.out.println(hm.toString());
System.out.println("Tabelle durchlaufen!");
und jetzt das Tabellen-Model:
Code:
HashMap messreihen = null;
public TableModelMR(HashMap daten) {
this.messreihen = daten;
}
String headers[] = {"ID", "Name", "Sensor", "Messeinheit", "Von", "Bis", "Interval" };
Class columnClasses[] = {Integer.class, String.class, String.class, String.class, String.class, String.class
,Integer.class};
public int getColumnCount() {
return 7;
}
public int getRowCount() {
return messreihen.size();
}
public String getColumnName(int col) {
return headers [col];
}
public Object getValueAt(int row, int col) {
Messreihen messreihe = (Messreihen)messreihen.get(new Integer( row ));
switch( col ){
case 0: return messreihe.getMessreihe_PK();
case 1: return messreihe.getName();
case 2: return messreihe.getSensor();
case 3: return messreihe.getMesseinheit();
case 4: return messreihe.getVon() ;
case 5: return messreihe.getBis() ;
case 6: return messreihe.getInterval() ;
default: return null;
}
}