public class frmInsert extends JFrame {
MysqlDataSource mds = new MysqlDataSource();
Connection con = null;
Statement stm = null;
ResultSet rs = null;
String sql = null;
private JPanel panelCenter = new JPanel();
private JMenuBar menuBar = new JMenuBar();
private JMenu menuFile = new JMenu();
private JMenuItem menuFileExit = new JMenuItem();
private JLabel statusBar = new JLabel();
private ImageIcon imageOpen = new ImageIcon(frmInsert.class.getResource("openfile.gif"));
private ImageIcon imageClose = new ImageIcon(frmInsert.class.getResource("closefile.gif"));
private ImageIcon imageHelp = new ImageIcon(frmInsert.class.getResource("help.gif"));
private JButton btnConnect = new JButton();
private JTextArea txtArt = new JTextArea();
private JTextArea txtZimmer = new JTextArea();
private JTextArea txtWohnflaeche = new JTextArea();
private JTextArea txtGrundflaeche = new JTextArea();
private JButton btnInsert = new JButton();
private BorderLayout borderLayout1 = new BorderLayout();
private JScrollPane jScrollPane1 = new JScrollPane();
private JTextArea txtLagebeschreibung = new JTextArea();
private JLabel lblEuro = new JLabel();
private JTextArea txtOrt = new JTextArea();
private JTextArea txtPreis = new JTextArea();
private JLabel lblm2wohn = new JLabel();
private JLabel jLabel1 = new JLabel();
private JPasswordField pasPasswort = new JPasswordField();
private JComboBox comArt = new JComboBox();
private JButton btnTestArt = new JButton();
public frmInsert() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
this.setJMenuBar(menuBar);
this.getContentPane().setLayout(borderLayout1);
panelCenter.setLayout(null);
this.setSize(new Dimension(575, 481));
this.setTitle("Der ImmoCheck");
menuFile.setText("File");
menuFileExit.setText("Schließen (alles)");
menuFileExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
fileExit_ActionPerformed(ae);
}
});
statusBar.setText("");
btnConnect.setText("CONNECT");
btnConnect.setBounds(new Rectangle(210, 20, 165, 30));
btnConnect.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
btnConnect_actionPerformed(e);
}
});
txtArt.setBounds(new Rectangle(140, 65, 150, 45));
txtArt.setBorder(BorderFactory.createTitledBorder("Art"));
txtArt.setEditable(false);
txtZimmer.setBounds(new Rectangle(10, 145, 60, 40));
txtZimmer.setBorder(BorderFactory.createTitledBorder("Zimmer"));
txtZimmer.setEditable(false);
txtWohnflaeche.setBounds(new Rectangle(10, 205, 75, 45));
txtWohnflaeche.setBorder(BorderFactory.createTitledBorder("Wohnfläche"));
txtWohnflaeche.setEditable(false);
txtGrundflaeche.setBounds(new Rectangle(10, 270, 75, 45));
txtGrundflaeche.setBorder(BorderFactory.createTitledBorder("Grundfläche"));
txtGrundflaeche.setEditable(false);
btnInsert.setText("HINZUFÜGEN!");
btnInsert.setBounds(new Rectangle(140, 375, 265, 20));
btnInsert.setEnabled(false);
btnInsert.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
btnInsert_actionPerformed(e);
}
});
jScrollPane1.setBounds(new Rectangle(140, 115, 410, 245));
txtLagebeschreibung.setLineWrap(true);
txtLagebeschreibung.setBorder(BorderFactory.createTitledBorder("Lagebeschreibung"));
txtLagebeschreibung.setEditable(false);
lblEuro.setText("€");
lblEuro.setBounds(new Rectangle(505, 395, 35, 15));
txtOrt.setBounds(new Rectangle(320, 65, 140, 45));
txtOrt.setBorder(BorderFactory.createTitledBorder("Ort"));
txtOrt.setEditable(false);
txtPreis.setBounds(new Rectangle(425, 370, 80, 40));
txtPreis.setBorder(BorderFactory.createTitledBorder("Preis"));
txtPreis.setEditable(false);
lblm2wohn.setText("m²");
lblm2wohn.setBounds(new Rectangle(85, 235, 34, 14));
jLabel1.setText("m²");
jLabel1.setBounds(new Rectangle(85, 300, 34, 14));
pasPasswort.setBounds(new Rectangle(15, 15, 175, 45));
pasPasswort.setBorder(BorderFactory.createTitledBorder("Passwort"));
comArt.setBounds(new Rectangle(400, 25, 140, 20));
comArt.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
comArt_actionPerformed(e);
}
});
btnTestArt.setText("TESTE");
btnTestArt.setBounds(new Rectangle(40, 360, 75, 21));
btnTestArt.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton1_actionPerformed(e);
}
});
menuFile.add(menuFileExit);
menuBar.add(menuFile);
this.getContentPane().add(statusBar, BorderLayout.NORTH);
panelCenter.add(btnTestArt, null);
panelCenter.add(comArt, null);
panelCenter.add(pasPasswort, null);
panelCenter.add(jLabel1, null);
panelCenter.add(lblm2wohn, null);
panelCenter.add(txtPreis, null);
panelCenter.add(txtOrt, null);
panelCenter.add(lblEuro, null);
jScrollPane1.getViewport().add(txtLagebeschreibung, null);
panelCenter.add(jScrollPane1, null);
panelCenter.add(btnInsert, null);
panelCenter.add(txtGrundflaeche, null);
panelCenter.add(txtWohnflaeche, null);
panelCenter.add(txtZimmer, null);
panelCenter.add(txtArt, null);
panelCenter.add(btnConnect, null);
this.getContentPane().add(panelCenter, BorderLayout.CENTER);
}
void fileExit_ActionPerformed(ActionEvent e) {
try {
if (rs != null)
rs.close();
if (stm != null)
stm.close();
if (con != null)
con.close();
}
catch (Exception ex) {
ex.printStackTrace();
System.out.println("Beim Disconnecten/Schließen des Fensters gab es ein Problem");
}
System.exit(0);
}
void helpAbout_ActionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(this, new frmImmoCheck_AboutBoxPanel1(), "About", JOptionPane.PLAIN_MESSAGE);
}
private void btnConnect_actionPerformed(ActionEvent e) {
try {
String sPass = pasPasswort.getText();
if (sPass != null) {
final String URL = "jdbc:mysql://localhost/immobilien";
final String USER = "root";
final String PASSWORD = sPass;
mds.setURL(URL);
mds.setUser(USER);
mds.setPassword(PASSWORD);
con = mds.getConnection(USER, PASSWORD);
stm = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
sql = "select id, art, ort, zimmer, lagebeschreibung, wohnflaeche, grundflaeche, preis from sortiment";
stm.executeQuery(sql);
rs = stm.getResultSet();
if (con != null)
JOptionPane.showMessageDialog(null, "Sie sind nun mit der Datenbank verbunden.");
else
JOptionPane.showMessageDialog(null,
"Sie sind nicht mit der Datenbank verbunden. Überprüfen Sie die Verbindung.");
btnInsert.setEnabled(true);
txtArt.setEditable(true);
txtGrundflaeche.setEditable(true);
txtLagebeschreibung.setEditable(true);
txtOrt.setEditable(true);
txtPreis.setEditable(true);
txtWohnflaeche.setEditable(true);
txtZimmer.setEditable(true);
pasPasswort.setEditable(false);
pasPasswort.setText("");
}
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Falsches Passwort! Bitte versuchen Sie es erneut!");
ex.getStackTrace();
}
}
Statement stmArt;
String sqlArt;
ResultSet rsArt;
private void comArt_actionPerformed(ActionEvent e) {
try {
stmArt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
sqlArt = "select art_lang from art";
rsArt = stmArt.executeQuery(sqlArt);
while (rsArt.next()) {
comArt.addItem(rsArt.getString(1));
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
private void btnInsert_actionPerformed(ActionEvent e) {
try {
String insert =
"INSERT INTO sortiment (art, ort, zimmer, lagebeschreibung, wohnflaeche, grundflaeche, preis) " +
"VALUES (?, ?, ?, ?, ? ,?, ?)";
PreparedStatement ps = con.prepareStatement(insert);
ps.setString(1, txtArt.getText());
ps.setString(2, txtOrt.getText());
ps.setInt(3, Integer.parseInt(txtZimmer.getText()));
ps.setString(4, txtLagebeschreibung.getText());
ps.setInt(5, Integer.parseInt(txtWohnflaeche.getText()));
ps.setInt(6, Integer.parseInt(txtGrundflaeche.getText()));
ps.setInt(7, Integer.parseInt(txtPreis.getText()));
int n = ps.executeUpdate();
if (n == 1) {
JOptionPane.showMessageDialog(null, "Okay, ein Datensatz wurde hinzugefügt.");
rs = stm.executeQuery(sql);
txtArt.setText("");
txtOrt.setText("");
txtZimmer.setText("");
txtWohnflaeche.setText("");
txtGrundflaeche.setText("");
txtLagebeschreibung.setText("");
txtPreis.setText("");
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null,
"Da gab es wohl ein Problem beim Hinzufügen einer Immobilie. Bitte überprüfen Sie Eingaben.");
ex.printStackTrace();
}
}
private void jButton1_actionPerformed(ActionEvent e) {
try {
stmArt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
sqlArt = "select art_lang from art";
rsArt = stmArt.executeQuery(sqlArt);
while (rsArt.next()) {
System.out.println("ResultSet-Ausgabe: " + rsArt.getString(1));
comArt.addItem(rsArt.getString(1));
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}