Über Actionlistener Datenbankzugriff

Status
Nicht offen für weitere Antworten.

paddylac

Mitglied
Hallo, ich hab hier mit etwas angefangen, komm aber nicht weiter... und zwar hab ich eine DBConnect Klasse mit der ich die Verbindung zu einer Datenbank herstelle. Nun möchte ich, das diese Klasse aufgerufen wird wenn ich auf einen Button der in einer anderen Klasse liegt klicke. Mir wurde gesagt das funktioniert mit einem Actionlistener, hab aber keine ahnung wie das Funktionieren soll.

Hier die 2 meiner meinung nach benötigten klassen, bin anfänger, und für jeden tipp dankbar.

Code:
import java.sql.*; 
import java.util.*;
  
public class DBConnect { 
    DBServer dbServer = null;
    Connection con = null;
    String user = null;
    String password = null;
    String odbc = null;
    
    public DBConnect(String user, String password, String odbc)
    {
        this.user = user;
        this.password = password;
        this.odbc = odbc;
        
        open(user, password, odbc);
    }
    
    private void open(String user, String password, String odbc)
    {

        dbServer = new DBServer(this);

        try
        {            
          	Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
          	con = DriverManager.getConnection("jdbc:odbc:" + odbc, user, password); 
        }
        catch (SQLException ex)
        {
            con = null;
        }
        catch (ClassNotFoundException ex)
        {
            con = null;
        }
    }
    
    public void open()
    {
        open(user, password, odbc);
    }
    
    public void close()
    {
        try
        {
            if (con != null && con.isClosed() == false)
            {
                con.close();
            }
            
        }
        catch (SQLException ex)
        {
        }
    }
    
    public Hashtable getServer()
    {
        return dbServer.getServer(con);
    }
  
     /* try
        {
            if (con.isClosed())
            {
                open(user, password, odbc);
            }
            
            if (con != null && con.isClosed() == false)
            {
                Statement stmt = con.createStatement();
                ResultSet rs = stmt.executeQuery("SELECT id, name FROM server"); 
                
                server se;
                int id;
                String name;
        
                while (rs.next()) 
                {
                    id = rs.getInt(1);
                    name = rs.getString(2);
                    //System.out.println(" id=" + id + " name=" + name );
                    se = new server(name, id);
                    serverHash.put(se.name, se);
                }
            
            }
        }
        catch (SQLException ex)
        {
        }
        
        return serverHash;
    }

    public server getServer(int i)
    {
        server se = null;
        
        try
        {
            if (con.isClosed())
            {
                open(user, password, odbc);
            }
            
            if (con != null && con.isClosed() == false)
            {
                Statement stmt = con.createStatement();
                ResultSet rs = stmt.executeQuery("SELECT id, name FROM server where id=" + i); 
                
                int id;
                String name;
        
                if (rs.next()) 
                {
                    id = rs.getInt(1);
                    name = rs.getString(2);
                    se = new server(name, id);
                }            
            }
        }
        catch (SQLException ex)
        {
        }
        
        return se;
    }

    public Hashtable getServer(String n)
    {
        Hashtable serverHash = new Hashtable();
        
        try
        {
            if (con.isClosed())
            {
                open(user, password, odbc);
            }
            
            if (con != null && con.isClosed() == false)
            {
                Statement stmt = con.createStatement();
                ResultSet rs = stmt.executeQuery("SELECT id, name FROM server WHERE name like '" + n + "'"); 
                
                server se;
                int id;
                String name;
        
                while (rs.next()) 
                {
                    id = rs.getInt(1);
                    name = rs.getString(2);
                    //System.out.println(" id=" + id + " name=" + name );
                    se = new server(name, id);
                    serverHash.put(se.name, se);
                }
            
            }
        }
        catch (SQLException ex)
        {
        }
        
        return serverHash;
    }

*/

}
Code:
 import java.awt.*;
import java.awt.event.*;
 
 public class LogInGUI extends Frame {
 
    TextField TPassword = new TextField (15);
    TextField TUserID = new TextField();
    Button BExit = new Button();
    Button BConnect = new Button();
    Choice ServerList;
    Label LB;
    
 
  
 
 class SymWindow extends java.awt.event.WindowAdapter {
    public void windowClosing(java.awt.event.WindowEvent event) {
      Object object = event.getSource();
      if (object == LogInGUI.this)
        LogInGUI_WindowClosing(event);
    }
  }
    void LogInGUI_WindowClosing(java.awt.event.WindowEvent event) 
  {
    
}  
    public static void main (String [] args) { 
    LogInGUI ui = new LogInGUI();
    ui.LogInGUI();}

      public void LogInGUI()
            {
        // Layouteigenschaften des Fensters
        this.setLayout(null);
        this.setSize(300,200);
        this.setVisible(true);
        this.setTitle("LogIn");
    
        /* ServerList = new Choice();
        ServerList.setSize(260, 30);
        ServerList.setLocation(130,80);
        ServerList.setVisible(true);
        this.add(ServerList); */
        
        BConnect= new Button("Connect");
	    BConnect.setSize(60,30);
	    BConnect.setLocation(200,60);
	   
	    this.add(BConnect);
	    
	    
	    BExit= new Button("Exit");
	    BExit.setSize(60,30);
	    BExit.setLocation(200,100);
	    this.add (BExit);
	     
	    TUserID = new TextField("UserID"); 
	    TUserID.setSize(60, 20);
        TUserID.setLocation(50, 80); 
        TUserID.setEditable(true); 
        TUserID.setBackground(Color.white); 
        TUserID.setForeground(Color.black);
        this.add(TUserID); 
        
        TPassword = new TextField("Passwort"); 
	    TPassword.setSize(60, 20);
        TPassword.setLocation(50, 100); 
        TPassword.setEditable(true); 
        TPassword.setBackground(Color.white); 
        TPassword.setForeground(Color.black);
        TPassword.setEchoChar ('*');
        this.add(TPassword);
        SymWindow aSymWindow = new SymWindow();
        this.addWindowListener(aSymWindow);
    
 
    
    }
    
}
Vielen Dank
 
B

Beni

Gast
Code:
Button button = new Button( "Mach was" );

button.addActionListener( new ActionListener(){
  public void actionPerformed( ActionEvent e ){

    // hier der Code der ausgeführt wird, wenn der Button gedrückt wird.
    ....
  }
});


P.S. von einem ActionListener aus Verbindung zu einer DB aufnehmen ist nur mässig toll. Diese Operation benötigt extrem viel Zeit, und dadurch wird die graphische Oberfläche blockiert. Besser wäre es, wenn du hier einen neuen Thread startest, der die Operation ausführt.
 

paddylac

Mitglied
Versteh nicht ganz was du meinst...

ich möchte ja das wenn ich den button klicke, der kontruktor von DBConnect aufgerufen wird...
bin leider nicht so schnell von begriff sorry... :bahnhof:
 
B

Beni

Gast
Dann nimm den Code den ich geschrieben habe, ersetze "button" durch deinen Knopf, und dort wo die "...." stehen, setzt du "DBConnect db = new DBConnect()" ein (und machst damit, was du willst).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
_user_q Über installDist exportiertes Programm wirft "Unsupported JavaFX configuration" AWT, Swing, JavaFX & SWT 0
K Event Handling Über JMenuBar die diversen Panels anzeigen AWT, Swing, JavaFX & SWT 10
Nabbit Über JList kein JPopupMenu AWT, Swing, JavaFX & SWT 2
M Über eine JMenuBar überprüfen ob ein JCheckBoxMenuItem selectiert ist. AWT, Swing, JavaFX & SWT 4
R ImageIcon - Über Socket AWT, Swing, JavaFX & SWT 1
T Über mehrere Panel zeichnen AWT, Swing, JavaFX & SWT 2
B Über SWT Button Thread beenden AWT, Swing, JavaFX & SWT 2
E Über CellEditorListener an die JTable gelangen AWT, Swing, JavaFX & SWT 4
C AWT Über Pulldownmenü neue Javadatei öffnen AWT, Swing, JavaFX & SWT 7
K Über die Menübar das JPanel ändern AWT, Swing, JavaFX & SWT 2
V Bei JLabel das Icon Über den Text machen AWT, Swing, JavaFX & SWT 2
G Über ein Video zeichnen AWT, Swing, JavaFX & SWT 3
M Über RadioButton öffnen? AWT, Swing, JavaFX & SWT 9
C Button ActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 1
B Actionlistener mit Java Swing AWT, Swing, JavaFX & SWT 2
L jComboBox Actionlistener wird beim erstmaligen Befüllen getriggert AWT, Swing, JavaFX & SWT 7
H Viele ActionListener (MouseListener) - Performance AWT, Swing, JavaFX & SWT 24
pkm MainFrame durch Actionlistener auffrischen, aber wie? AWT, Swing, JavaFX & SWT 2
L actionListener für Button AWT, Swing, JavaFX & SWT 97
R Actionlistener funktioniert nicht AWT, Swing, JavaFX & SWT 4
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
R ActionListener in Actionlistener AWT, Swing, JavaFX & SWT 6
S Swing Variable in Actionlistener aufrufen AWT, Swing, JavaFX & SWT 10
P Swing ActionListener überschreibt einen Wert aus der Hauptklasse nicht AWT, Swing, JavaFX & SWT 5
N Aufruf einer anderen Klasse durch Button ActionListener AWT, Swing, JavaFX & SWT 2
M AWT Kann meinen Fehler beim ActionListener nicht finden AWT, Swing, JavaFX & SWT 5
F Wie bekomme ich den Wert der ComboBox in eine Variable gespeichert welche ich für meinen ActionListener nutzen kann? AWT, Swing, JavaFX & SWT 3
L Ein Actionlistener für ein Textfeld, anstatt viele Actionlistener für ein Textfeld AWT, Swing, JavaFX & SWT 7
coolian ActionListener funktonirt nicht richtig auf JMenuItem AWT, Swing, JavaFX & SWT 4
L ActionListener zu Button in Panel hinzufügen AWT, Swing, JavaFX & SWT 10
R Kann JLabel in ActionListener nicht aufrufen AWT, Swing, JavaFX & SWT 4
Blender3D einzelner ActionListener vs anonyme ActionListener AWT, Swing, JavaFX & SWT 10
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
xYurisha ActionListener Methoden Buttons zuweisen! AWT, Swing, JavaFX & SWT 16
J ActionListener bei Buttons AWT, Swing, JavaFX & SWT 14
S Swing Problem mit Button und ActionListener AWT, Swing, JavaFX & SWT 5
it_is_all ActionListener umlenken/ updaten mit AddActionListener funktioniert nicht AWT, Swing, JavaFX & SWT 3
it_is_all Event Handling ActionListener in anderer Klasse klappt nicht AWT, Swing, JavaFX & SWT 4
F "ActionListener" funktioniert nicht AWT, Swing, JavaFX & SWT 4
Z ActionListener Variable übergeben AWT, Swing, JavaFX & SWT 12
T JProgressbar während actionListener updaten AWT, Swing, JavaFX & SWT 1
S While Schleife im Actionlistener AWT, Swing, JavaFX & SWT 1
S ActionListener für alle Buttons AWT, Swing, JavaFX & SWT 26
R Swing ActionListener bei JButton AWT, Swing, JavaFX & SWT 9
T ActionListener nimmt JTextField nicht mehr an. AWT, Swing, JavaFX & SWT 2
P ActionListener Graphics Einbauen AWT, Swing, JavaFX & SWT 0
S actionlistener mit 2 fenster integrieren AWT, Swing, JavaFX & SWT 11
Liondary GUI - ActionListener AWT, Swing, JavaFX & SWT 7
J ActionListener erkennt Variable nicht AWT, Swing, JavaFX & SWT 6
E ActionListener führt falsche Funktion aus AWT, Swing, JavaFX & SWT 6
Sin137 ActionListener in MVC AWT, Swing, JavaFX & SWT 7
M ActionListener und mathematische Methoden AWT, Swing, JavaFX & SWT 13
A Oberfläche mit zwei Klassen und actionlistener verbinden AWT, Swing, JavaFX & SWT 7
Paul15 ActionListener Variablen AWT, Swing, JavaFX & SWT 13
Y ActionListener AWT, Swing, JavaFX & SWT 2
K Ereignisbehandlung, ActionListener, ActionEvent AWT, Swing, JavaFX & SWT 3
A Gui für Vokabeltrainer (ActionListener) AWT, Swing, JavaFX & SWT 14
C Im ActionListener Buttons disablen, einen Thread starten, dann Buttons enablen AWT, Swing, JavaFX & SWT 2
M JTextArea wird nicht aktualisiert (ActionListener-Problem) AWT, Swing, JavaFX & SWT 1
J Event Handling JOptionPane ActionListener setzen. AWT, Swing, JavaFX & SWT 3
S ActionListener Klasse aufrufen AWT, Swing, JavaFX & SWT 4
R Swing Problem: IOException bei ActionListener AWT, Swing, JavaFX & SWT 1
J ActionListener soll auf paint() Methode zugreifen AWT, Swing, JavaFX & SWT 1
A JButton wird bei ActionListener nicht "angenommen" AWT, Swing, JavaFX & SWT 7
T Einfaches Problem mit ActionListener AWT, Swing, JavaFX & SWT 2
K ActionListener mit KeyListener AWT, Swing, JavaFX & SWT 7
K GUI, Button, ActionListener - ein paar Einsteigerprobleme AWT, Swing, JavaFX & SWT 1
W Verschachtelter ActionListener AWT, Swing, JavaFX & SWT 0
N gewünschte ActionListener bei RadioButton mit isSelected geht nicht AWT, Swing, JavaFX & SWT 2
C Probleme mit Buttons und einem ActionListener AWT, Swing, JavaFX & SWT 2
K Swing JMenu und ActionListener AWT, Swing, JavaFX & SWT 4
A Swing ActionListener AWT, Swing, JavaFX & SWT 8
V ActionListener Abhängigkeitenproblem AWT, Swing, JavaFX & SWT 6
M ActionListener für mehrere Klassen AWT, Swing, JavaFX & SWT 4
J ActionListener für Buttons AWT, Swing, JavaFX & SWT 3
M Event Handling ActionListener übergeben ich checks net AWT, Swing, JavaFX & SWT 4
C Swing ComboBox - ActionListener deaktivieren AWT, Swing, JavaFX & SWT 2
S Button (ActionListener) funktioniert nicht, wenn y-Koordinate verändert wird AWT, Swing, JavaFX & SWT 5
L Swing ActionListener führt seine Aufgabe nur teilweise aus. AWT, Swing, JavaFX & SWT 7
A Swing ActionListener kann nicht hinzugefügt werden AWT, Swing, JavaFX & SWT 4
P Actionlistener - 3 klassen - kompliziert - auf methoden zugreifen AWT, Swing, JavaFX & SWT 3
Q CardLayout, ausgelagerte Panels, ActionListener AWT, Swing, JavaFX & SWT 5
M ProgressBar in ActionListener AWT, Swing, JavaFX & SWT 4
D AWT eigenem Knopf ActionListener zuweisen AWT, Swing, JavaFX & SWT 24
E Wert aus ActionListener geben AWT, Swing, JavaFX & SWT 4
J ActionListener per Innere Klasse oder e.getActionCommand() if-Abfrage? AWT, Swing, JavaFX & SWT 12
L Swing ActionListener zugriff auf bestimmte Elemente AWT, Swing, JavaFX & SWT 3
P Swing Seltsames ActionListener-Verhalten AWT, Swing, JavaFX & SWT 7
Oliver530 ActionListener von eigener ButtonKlasse AWT, Swing, JavaFX & SWT 16
Kenan89 statischer ActionListener keine Wirkung? AWT, Swing, JavaFX & SWT 2
Kenan89 statischer ActionListener keine Wirkung? AWT, Swing, JavaFX & SWT 3
C In der Schleife ActionListener aktivieren AWT, Swing, JavaFX & SWT 3
B Swing Problem beim ActionListener AWT, Swing, JavaFX & SWT 5
P Swing JPanel mit ActionListener mehrfach verwenden AWT, Swing, JavaFX & SWT 8
1 ActionEvent generieren und an ActionListener weiterleiten AWT, Swing, JavaFX & SWT 12
N Swing Klasse erbt von JDialog - Problem mit innerer ActionListener-Klasse AWT, Swing, JavaFX & SWT 6
N JCombobox und Actionlistener Aktion nur ausführen, wenn Useraktion ihn auslöst AWT, Swing, JavaFX & SWT 4
N Componente und Actionlistener AWT, Swing, JavaFX & SWT 5
C ActionListener AWT, Swing, JavaFX & SWT 6
Corben ActionListener Error AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben