Hallo nochmal!
Bisher hat das mit den Action Listenern immer ganz gut geklappt in JFrames
Jetzt, da ich eine SQL Datenbank abfrage gehts nicht mehr.
es kommt die fehlermeldung:
overriden method does not throw java sql exception.
Ich muß diese Exception aber doch irgendwie abfangen können und den Event auslösen können.
Bisher hat das mit den Action Listenern immer ganz gut geklappt in JFrames
Jetzt, da ich eine SQL Datenbank abfrage gehts nicht mehr.
es kommt die fehlermeldung:
overriden method does not throw java sql exception.
Ich muß diese Exception aber doch irgendwie abfangen können und den Event auslösen können.
Code:
import java.sql.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class Finanzanalyse extends JFrame implements ActionListener
{
JTextArea displayArea;
JLabel header;
JButton connect;
private Container con;
public Finanzanalyse()
{
super("Daten aus der Datenbank saugen ...");
con = getContentPane();
connect = new JButton("saugen ");
displayArea = new JTextArea("TestString................");
header = new JLabel("Daten Anzeige");
displayArea.add(header);
JPanel layoutPanel = new JPanel();
layoutPanel.setLayout( new BoxLayout( layoutPanel, BoxLayout.Y_AXIS) );
layoutPanel.add(connect);
layoutPanel.add(displayArea);
con.add(layoutPanel);
connect.setActionCommand("saugen");
connect.addActionListener(this);
}
public void actionPerformed(ActionEvent e) throws SQLException, ClassNotFoundException // <==
{
if(e.getActionCommand().equals("saugen")) datenSaugenMethode(); // <==
}
public void datenSaugenMethode()throws SQLException, ClassNotFoundException
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:PostgreSQL";
Connection con = DriverManager.getConnection(url, "user", "passwort");
PreparedStatement st = con.prepareStatement("Select Umsatz from finanzdaten");
ResultSet rs = st.executeQuery();
int numCols = rs.getMetaData().getColumnCount();
while(rs.next())
{
for(int j = 1; j <= numCols; j++)
{
System.out.print(rs.getString(j) + "");
System.out.println();
}
rs.close();
st.close();
con.close();
}
}
public static void main(String args[]) throws SQLException, ClassNotFoundException
{
Finanzanalyse app = new Finanzanalyse();
app.setDefaultCloseOperation(EXIT_ON_CLOSE);
app.setSize(300,300);
app.setVisible(true);
}
}