Java: Datenbank-Tabelle -> JTable?

Diskutiere mit über: Java: Datenbank-Tabelle -> JTable? im Mac OS X Entwickler, Programmierer Forum

  1. st3-f

    st3-f Thread Starter MacUser Mitglied

    Beiträge:
    61
    Zustimmungen:
    0
    Registriert seit:
    22.12.2006
    Hallo an alle!

    Meine letzte Frage war, wie ich eine Datenbankverbindung am besten herstelle, das ist mir dank eurer Hilfe gelungen, nun habe ich das nächste Problem, ich glaube ich bin einfach zu doof dafür, da ich schon ein paar Tage daran rummache!

    Also, ich hab die Datenbank und frage Daten ab - alles kein Problem. Nun möchte ich die Daten in einer JTable ausgeben. Erst habe ich es so gemacht, dass ich eine JTable mit leeren Strings gefüllt habe und dann nachträglich die Daten mit

    Code:
    table.setValueAt()
    eingefügt, das ging auch. Aber wirklich sinnvoll ist es ja nicht, da ich ja sonst immer eine Menge leerer Tabelenzellen habe am Anfang und die Tabelle nicht dynamisch gefüllt wird. Nun habe ich schon Google gequält und einige Sachen gefunden/gelesen, die mir aber nicht wirklich weiterhelfen, da ich das einfach nicht kapiere.

    1. Ein eigenes TableModel - hab ich gemacht, die Tabelle wird automatisch erzeugt mit der richtigen Anzahl an Zeilen/Spalten, aber mit setValueAt stehen keine Einträge drin.

    2. Ich habe etwas gefunden, das da heisst QueryTableModel, um dieses zu benutzen müsste ich wohl einen Großteil des Programms umschreiben, wenn es nicht anders geht werde ich das auch machen, aber mir wäre es anders natürlich lieber.

    Hat von euch schon jemand Erfahrung damit gemacht und kann mir einen Tipp geben? Bin über jede Hilfe dankbar, auch Links zu Tutorials oder dergleichen, wo ich es selbst nachlesen kann würden mich erfreuen.

    In diesem Sinne, Grüsse aus London

    st3-f
     
  2. cynic

    cynic MacUser Mitglied

    Beiträge:
    1.452
    Zustimmungen:
    45
    Registriert seit:
    15.08.2006
    Eine einfache Möglichkeit ist es das Model über die Methode setDataVector zu füllen... Beispiel: (Angenommen deine Tabelle heißt jTable1)

    javax.swing.table.DefaultTableModel dtm = (javax.swing.table.DefaultTableModel)jTable1.getModel();
    dtm.setDataVector(vector1, vector2);

    Am besten liest du dir mal die API beschreibung zu der Methode durch, dann solltest du schon eine gute Idee haben, wie du das machst und was die 2 Vectoren enthalten müssen. ;)
     
    Zuletzt bearbeitet: 30.03.2007
  3. howx

    howx unregistriert

    Beiträge:
    588
    Zustimmungen:
    36
    Registriert seit:
    03.03.2006
    Poste bitte mal wie setValueAt() bei deinem eigenen Tablemodel aussieht. Hast du firetablerowsupdated ausgeführt?

    Edit: aja, du darfst beim eigenen Tablemodel nicht table.setValueAt() machen, sondern du musst table.getModel().setValueAt(...) machen.
     
  4. st3-f

    st3-f Thread Starter MacUser Mitglied

    Beiträge:
    61
    Zustimmungen:
    0
    Registriert seit:
    22.12.2006
    Hm ... das werde ich zu Hause gleich mal versuchen - hab das Programm leider nicht dabei und zu Hause kein Internet, vielen Dank schonmal fuer den Tipp!!!


    Auch Danke fuer diesen Tipp, werde ich mir auch mal anschauen, hoert sich interessant an! Ich melde mich morgen wieder, ob / und / oder was funktioniert hat! ;-)

    Gruesse aus London
    st3-f
     
  5. st3-f

    st3-f Thread Starter MacUser Mitglied

    Beiträge:
    61
    Zustimmungen:
    0
    Registriert seit:
    22.12.2006
    So, da bin ich mal wieder. Ich hab mich gestern nochmals mit dem Thema beschafft und habe nun eine Lösung mit einem eigenen TableResultsModel. Das heisst:
    Auf Basis des ResultSets der Datenbank-Abfrage wird das TabellenModel erzeugt und die Tabelle wird angezeigt. Ging eigentlich relativ einfach ... so im Nachhinein, hab es in einem Buch gefunden und etwas angepasst.

    Vielen Dank dennoch für die Tipps. Das mit table.getModel().setValueAt(..) hat bei mir leider nicht funktioniert, warum auch immer, aber jetzt geht es ja.

    Danke und Grüsse

    st3-f
     
  6. cynic

    cynic MacUser Mitglied

    Beiträge:
    1.452
    Zustimmungen:
    45
    Registriert seit:
    15.08.2006
    Super, dass du dir eine Lösung erarbeitet hast, noch weiterhin viel Spaß! :)
     
  7. st3-f

    st3-f Thread Starter MacUser Mitglied

    Beiträge:
    61
    Zustimmungen:
    0
    Registriert seit:
    22.12.2006
    Thx. Freue mich auch über eine "eigene" Lösung. Da macht es doch gleich viel mehr Spass weiterzumachen! :) Bin auch richtig stolz auf mich!

    st3-f
     
Die Seite wird geladen...
Ähnliche Themen - Java Datenbank Tabelle Forum Datum
Umgebungsvariabel Java Mac OS X Entwickler, Programmierer 14.11.2016
Java deinstallieren, ältere Version installieren Mac OS X Entwickler, Programmierer 13.09.2016
JAVA unter OS X EL Capitan Mac OS X Entwickler, Programmierer 15.04.2016
Java - Minesweeper (Bilder einbinden) Mac OS X Entwickler, Programmierer 20.02.2016
Java + Datenbank Mac OS X Entwickler, Programmierer 28.02.2007

Diese Seite empfehlen

Benutzerdefinierte Suche