Hallo ich habe eine Frage: Ich hab eine Verbindung zu einer Datenbank hergestellt und möchte die Daten mit einer JTable ausgeben das funktioniert soweit auch nun möchte ich das Programm erweitern und nach den Nachnamen suchen bzw Daten löschen und verändern können. Die Daten wurden in einer ArrayList gespeichert und ich möchte mehrere Querys ausführen wie erweitere ich mein Programm jetzt?
SO schaut die Patientenklasse aus:
Java:
public class NewJFrame extends javax.swing.JFrame {
String hostname = "localhost";
String port = "3306";
String dbname = "test_patientenliste3";
static String user = "root";
static String password = "admin";
static String url = "jdbc:mysql://localhost:3306/test_patientenliste3?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
String driver = "com.mysql.cj.jdbc.Driver";
static Connection conn = null;
/**
* Creates new form NewJFrame
*/
public NewJFrame() {
initComponents();
}
public ArrayList<Patient> patientList() {
ArrayList<Patient> patientenList = new ArrayList<>();
try {
user = "root";
password = "admin";
Class.forName("com.mysql.cj.jdbc.Driver");
conn = DriverManager.getConnection(url, user, password);
String query1 = "SELECT * FROM patienten";
String query2 = "SELECT * FROM patienten where nachname =" + jText_Search.getText() + "";
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query1);
Patient patient;
while (rs.next()) {
patient = new Patient(rs.getInt("p_id"), rs.getString("vorname"), rs.getString("nachname"), rs.getString("geschlecht"),
rs.getString("geburtsdatum"), rs.getString("svnr"), rs.getString("krankenkasse"), rs.getString("strasse"),
rs.getString("ort"), rs.getString("plz"));
patientenList.add(patient);
}
} catch (ClassNotFoundException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex);
}
return patientenList;
}
public void findPatient() {
ArrayList<Patient> list = patientList();
DefaultTableModel model = new DefaultTableModel();
Object[] row = new Object[10];
for (int i = 0; i < list.size(); i++) {
row[0] = list.get(i).getId();
row[1] = list.get(i).getFirstName();
row[2] = list.get(i).getLastName();
row[3] = list.get(i).getGeschlecht();
row[4] = list.get(i).getGeburtsdatum();
row[5] = list.get(i).getSvnr();
row[6] = list.get(i).getKrankenkasse();
row[7] = list.get(i).getStrasse();
row[8] = list.get(i).getOrt();
row[9] = list.get(i).getPlz();
model.addRow(row);
}
jTable_Display_User.setModel(model);
}
public void show_list() {
ArrayList<Patient> list = patientList();
DefaultTableModel model = (DefaultTableModel) jTable_Display_User.getModel();
Object[] row = new Object[10];
for (int i = 0; i < list.size(); i++) {
row[0] = list.get(i).getId();
row[1] = list.get(i).getFirstName();
row[2] = list.get(i).getLastName();
row[3] = list.get(i).getGeschlecht();
row[4] = list.get(i).getGeburtsdatum();
row[5] = list.get(i).getSvnr();
row[6] = list.get(i).getKrankenkasse();
row[7] = list.get(i).getStrasse();
row[8] = list.get(i).getOrt();
row[9] = list.get(i).getPlz();
model.addRow(row);
}
}
private void SuchenActionPerformed(java.awt.event.ActionEvent evt) {
findPatient();
}
private void AnlegenActionPerformed(java.awt.event.ActionEvent evt) {
}
private void BearbeitenActionPerformed(java.awt.event.ActionEvent evt) {
}
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
System.out.println("* Datenbank-Verbindung beenden");
try {
conn.close();
} catch (SQLException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
System.exit(0);
}
private void AusgebenActionPerformed(java.awt.event.ActionEvent evt) {
show_list();
}
private void LöschenActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jText_SearchActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new NewJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton Anlegen;
private javax.swing.JButton Ausgeben;
private javax.swing.JButton Bearbeiten;
private javax.swing.JButton Löschen;
private javax.swing.JButton Suchen;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable_Display_User;
private javax.swing.JTextField jText_Search;
private javax.swing.JToolBar jToolBar1;
// End of variables declaration
}
Java:
public class Patient {
private int p_id;
private String vorname;
private String nachname;
private String geschlecht;
private String geburtsdatum;
private String svnr;
private String krankenkasse;
private String strasse;
private String ort;
private String plz;
public Patient(int p_id, String vorname, String nachname, String geschlecht,
String geburtsdatum, String svnr, String krankenkasse, String strasse,
String ort, String plz) {
this.p_id = p_id;
this.vorname = vorname;
this.nachname = nachname;
this.geschlecht = geschlecht;
this.geburtsdatum = geburtsdatum;
this.svnr = svnr;
this.krankenkasse = krankenkasse;
this.strasse = strasse;
this.ort = ort;
this.plz = plz;
}
public int getId() {
return p_id;
}
public void setId(int p_id) {
this.p_id = p_id;
}
public String getLastName() {
return nachname;
}
public void setLastName(String nachname) {
this.nachname = nachname;
}
public String getFirstName() {
return vorname;
}
public void setFirstName(String vorname) {
this.vorname = vorname;
}
public String getGeschlecht() {
return geschlecht;
}
public void setGeschlecht(String geschlecht) {
this.geschlecht = geschlecht;
}
public String getGeburtsdatum() {
return geburtsdatum;
}
public void setGeburtsdatum(String geburtsdatum) {
this.geburtsdatum = geburtsdatum;
}
public String getSvnr() {
return svnr;
}
public void setSvnr(String svnr) {
this.svnr = svnr;
}
public String getKrankenkasse() {
return krankenkasse;
}
public void setKrankenkasse(String krankenkasse) {
this.krankenkasse = krankenkasse;
}
public String getStrasse() {
return strasse;
}
public void setStrasse(String strasse) {
this.strasse = strasse;
}
public String getOrt() {
return ort;
}
public void setOrt(String ort) {
this.ort = ort;
}
public String getPlz() {
return plz;
}
public void setPlz(String plz) {
this.plz = plz;
}
}