Java und SQL anbindung.
Ich möchte eine Art Verwaltungsprogamm zu schreiben, hierfür muss ich eine Tabelle aus einer SQL Datenbank (Firebird) in Java, mittels eines JTabels dastellen.
Ich habe ein Quellcode geschrieben, bei dem mir eclipse auch keine Fehlermeldung gibt, jedoch öffnet sich beim ausführen der Class mit dem JTable keine Tabelle.
Wisst ihr vielleicht mehr
Ich habe hier mal den Quellcode der Class in der das JTable ausgeführt werden soll:
Alles anzeigen
Ich weiß nicht wo mein Fehler ist, vielleicht könnt ihr mir helfen
Schonmal vielen Dank im Vorraus!
Ich möchte eine Art Verwaltungsprogamm zu schreiben, hierfür muss ich eine Tabelle aus einer SQL Datenbank (Firebird) in Java, mittels eines JTabels dastellen.
Ich habe ein Quellcode geschrieben, bei dem mir eclipse auch keine Fehlermeldung gibt, jedoch öffnet sich beim ausführen der Class mit dem JTable keine Tabelle.
Wisst ihr vielleicht mehr
Ich habe hier mal den Quellcode der Class in der das JTable ausgeführt werden soll:
Quellcode
- package Layoutstudenten;
- import java.awt.BorderLayout;
- import java.awt.Dimension;
- import java.awt.event.WindowAdapter;
- import java.awt.event.WindowEvent;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.Statement;
- import javax.swing.JFrame;
- import javax.swing.JTable;
- public class TB2 extends JFrame {
- //Quelle:[url='http://www.easy-coding.de/jtable-mit-daten-aus-der-datenbank-neu-zeichnen-t5280.html']http://www.easy-coding.de/jtable-mit...nen-t5280.html[/url]
- JTable tab;
- Statement stmt = null;
- Connection con=null;
- ResultSet rs =null;
- private String user;
- private String pw;
- private String ur;
- private String dataname;
- private String prt;
- public TB2(String benutzer, String passwort, String url, String dbName, String port){ //Konstruktor zum Erzeugen einer DB-Tabelleund Darstellen
- String user=benutzer;
- String pw=passwort;
- String ur=url;
- String dataname=dbName;
- String prt=port;
- Object[][] daten= new Object[4][3]; // 2-dim. Feld für Tabellendaten
- String[] spalten={"Projektname","Kunde","Budget"}; // Überschriften der Spalten
- tab=new JTable(daten,spalten); // eine JTable konstruieren
- tab.setPreferredScrollableViewportSize(new Dimension(300,150)); // Größe
- add(tab,BorderLayout.CENTER); // im Fensterzentrum einfügen
- add(tab.getTableHeader(),BorderLayout.NORTH); // Spaltenüberschriften oben
- addWindowListener( //Methode zum Reagieren auf Fensterereignisse hinzufügen
- new WindowAdapter(){ //Instanz der Klasse WindowAdapter (mit leerem Interface WindowListener)
- public void windowClosing(WindowEvent e) //überschreibt Reaktion auf Fensterschließen
- {System.exit(0);} //mit Beenden des Programms
- }
- );
- }
- public void öffneDB()
- {
- try {
- Class.forName("org.firebirdsql.jdbc.FBDriver"); // Treiber laden
- } catch (Exception e) {
- System.out.println("Fehler beim Laden des JdbcOdbc Treibers");
- return;
- }
- try {
- con = DriverManager.getConnection(ur,user,pw); // Verbindung zu Datenbank herstellen
- stmt = con.createStatement();
- } catch (Exception e) {
- System.err.println("keine Verbindung zu "+ur);
- return;
- }
- }
- public void frageProjekt()
- {
- try {
- rs = stmt.executeQuery("select * from Personen;"); // Datenbankabfrage
- int zeile=0;
- while (rs.next()){ //ResultSet abarbeiten: jeweils eine Zeile
- tab.setValueAt(rs.getString(1),zeile,0); //1. Attribut: String mit Projektname
- tab.setValueAt(rs.getString(2),zeile,1); //2. Attribut: String mit Kunde
- tab.setValueAt(new Integer(rs.getInt(3)),zeile,2); //3. Attribut: Int mit Budget als Objekt
- zeile++;
- }
- }catch (Exception e) {
- System.err.println("Fehler beim Bearbeiten der SQL-Anweisung"+
- ": "+e.getMessage());
- }
- try{
- con.close();
- } catch (Exception e) {
- System.out.println("Fehler beim Schließen der DB");
- }
- }
- }
Ich weiß nicht wo mein Fehler ist, vielleicht könnt ihr mir helfen
Schonmal vielen Dank im Vorraus!