Вот полностью код... если кому интерессно...
| Код | import java.awt.GridLayout; import java.awt.event.*; import javax.swing.*; import javax.swing.table.DefaultTableModel; import java.sql.*;
public class DemoDatenbankZugrif extends JFrame {
private JTextField name = null; private JTextField vorname = null; private JTextField strasse = null; private JTextField ort = null; private JTextField plz = null; private JTextField telefon = null; private JPanel eingabePanel = null; private JButton executQuery = null; private JButton deleteRow = null; private JButton datenLaden = null; private JButton exitApplication = null; private DefaultTableModel tableModel = null; private JTable resultTable = null;
public DemoDatenbankZugrif() { super("Datenbankabfrage Tool: "); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /*** * Tabellenmodel initialisieren */ tableModel = new DefaultTableModel(); tableModel.addColumn("Name"); tableModel.addColumn("Vorname"); tableModel.addColumn("Strasse"); tableModel.addColumn("Ort"); tableModel.addColumn("PLZ"); tableModel.addColumn("Telefon");
/*** * Eingabefelder initialisieren */ name = new JTextField(); vorname = new JTextField(); strasse = new JTextField(); ort = new JTextField(); plz = new JTextField(); telefon = new JTextField();
/*** * Buttons zur Steuerung von Ereignissen Initialisieren */ executQuery = new JButton("Excequte Query"); deleteRow = new JButton("Delete Row"); datenLaden = new JButton("Load Data"); exitApplication = new JButton("Exit Application");
/*** * Elemente die der Steuerung dienen in die eingabePanel einfuegen. */ eingabePanel = new JPanel(new GridLayout(4, 3)); eingabePanel.add(new JLabel("Name: ")); eingabePanel.add(name); eingabePanel.add(new JLabel("Vorname: ")); eingabePanel.add(vorname); eingabePanel.add(new JLabel("Strasse: ")); eingabePanel.add(strasse); eingabePanel.add(new JLabel("Ort: ")); eingabePanel.add(ort); eingabePanel.add(new JLabel("PLZ: ")); eingabePanel.add(plz); eingabePanel.add(new JLabel("Telefon: ")); eingabePanel.add(telefon); eingabePanel.add(datenLaden); eingabePanel.add(executQuery); eingabePanel.add(deleteRow); eingabePanel.add(exitApplication);
/*** * Tabelle initialisieren. */ resultTable = new JTable(tableModel); JScrollPane scrollPane = new JScrollPane(resultTable); JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, eingabePanel, scrollPane);
datenLaden.addActionListener(new myActionGetData()); executQuery.addActionListener(new myInsertData()); deleteRow.addActionListener(new myDeleteRow()); exitApplication.addActionListener(new myExit());
add(splitPane); setVisible(true); pack(); }
public static void main(String[] args) { new DemoDatenbankZugrif(); }
class GetData extends Thread {
public void run() { try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception exception) { System.out.println("Error!!!"); exception.printStackTrace(); }
DefaultTableModel tm = (DefaultTableModel) resultTable.getModel(); tm.getDataVector().removeAllElements();
Connection verbindung = null; String db = "jdbc:mysql://localhost/pvt"; String user = "root"; String pwd = "maximus";
try { verbindung = DriverManager.getConnection(db, user, pwd); Statement stm = verbindung.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
String sql = "SELECT * FROM personen"; ResultSet ergebnis = stm.executeQuery(sql); String name, vorname, strasse, plz, telefon, ort = null; while (ergebnis.next() == true) { name = ergebnis.getString("name"); vorname = ergebnis.getString("vorname"); strasse = ergebnis.getString("strasse"); ort = ergebnis.getString("ort"); plz = ergebnis.getString("plz"); telefon = ergebnis.getString("telefon"); String result[] = {name, vorname, strasse, ort, plz, telefon}; tableModel.addRow(result);
}
} catch (SQLException sqlExcepltion) { System.out.println("Error!!!"); sqlExcepltion.printStackTrace(); } } }
class myActionGetData implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) { try { new GetData().start(); } catch (Exception exception) { System.out.println("Error!!!"); } } }
class setDataInDB extends Thread {
public void run() { try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException classNotFoundException) { System.out.println("Error!!! Class not found!!!"); classNotFoundException.printStackTrace(); }
Connection verbindung = null; String db = "jdbc:mysql://localhost/pvt"; String user = "root"; String pwd = "maximus";
try { verbindung = DriverManager.getConnection(db, user, pwd); Statement stm = verbindung.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
String sql = "INSERT INTO personen (name,vorname,strasse,ort,plz,telefon)" + " VALUES('" + name.getText() + "','" + vorname.getText() + "','" + strasse.getText() + "','" + ort.getText() + "','" + plz.getText() + "','" + telefon.getText() + "');";
int r = stm.executeUpdate(sql);
System.out.println(sql);
new GetData().start();
} catch (Exception exception) { System.out.println("Error by execute SQL Query!!!"); exception.printStackTrace(); } } }
class myInsertData implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) { try { new setDataInDB().start(); } catch (Exception exception) { System.err.println("Error!!! "); exception.printStackTrace(); } } }
class myDeleteRow implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) { try { tableModel.removeRow(resultTable.getSelectedRow()); } catch (Exception exception) { System.out.println("Error by row deleting"); } try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception exception) { System.err.println("Error by loading the Driver!"); }
Connection verbindung = null; String db = "jdbc:mysql://localhost/pvt"; String user = "root"; String pwd = "maximus";
try { verbindung = DriverManager.getConnection(db, user, pwd); Statement stm = verbindung.createStatement(); //String name_ = (String) tableModel.getValueAt(resultTable.getSelectedRow(), resultTable.getSelectedColumn()); //String name_ = tableModel.getValueAt(resultTable.getSelectedRow(), resultTable.getSelectedColumn()); /*String vorname = (String) tableModel.getValueAt(resultTable.getSelectedRow(), resultTable.getSelectedColumn()); String strasse = (String) tableModel.getValueAt(resultTable.getSelectedRow(), resultTable.getSelectedColumn()); String ort = (String)tableModel.getValueAt(resultTable.getSelectedRow(), resultTable.getSelectedColumn());*/ //String sql = "DELETE FROM personen WHERE vorname='" + name_ + "';"; //"" +"'AND vorname='" + vorname + "'AND string='" + strasse + //"'AND ort='" + ort +"';";
//int r = stm.executeUpdate(sql); int row = resultTable.getSelectedRow(); int col = resultTable.getSelectedColumn(); System.out.println("Row: " + row + " / Column: " + col); } catch (Exception exception) { System.err.println("Error!!!"); exception.printStackTrace(); }
} }
class myExit implements ActionListener {
public void actionPerformed(ActionEvent actionEvent) { System.exit(0); } } }
|
|