Rückgabe eines Values in umgekehrte richtung

Zakon

Bekanntes Mitglied
Hallo alle zusammen.
Ich habe ein Porgramm geschrieben awas aus drei klassen besteht.
1.Db Connection (Datenabnk connection mit dazugehörigen SQL Statements)
2.Controller (Logik zum abrufen der SQL Daten aus der Datenbank)
3.View(Anzeigen der Daten)
Jetzt meine Frage ich gehe ja nur in die eine richtung beim übergeben der Daten von 1 -2 -3.
Ich brauche aber für ein SQL Statement das Value der Box die in der View angelegt wurde.
[CODE lang="java" title="DBConnection"]public List<allDetails> loadFirmenDetails () {
List<allDetails> resultfirma = new ArrayList<>();
try {
PreparedStatement ps = con.prepareStatement("SELECT * FROM Frimen F JOIN Mitarbeiter M ON F.ID=M.Firmen_ID " +
"JOIN Produkte P ON P.ID=M.ID WHERE F.Name LIKE '%" + boxFirma.getvalue + "%'");
ResultSet rs= ps.executeQuery();
while (rs.next()) {
resultfirma.add(new allDetails(rs.getInt(1), rs.getString(2), rs.getInt(3), rs.getString(4),
rs.getString(5), rs.getInt(6), rs.getInt(7), rs.getString(8)));
}
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
return resultfirma;
}[/CODE]
[CODE lang="java" title="Controller"] //DropDown Firmen
public List<allDetails> dropdownFirmen(){
List<allDetails>listedropdownfirmen = DBConnection.getInstance().loadFirmenDetails();
return listedropdownfirmen;
}[/CODE]
[CODE lang="java" title="View"] @FXML
public void befuellen() {
boxFirma.setItems((ObservableList<FirmenDetails>)data1);
boxProdukt.setItems((ObservableList<ProduktDetails>) data2);
boxName.setItems((ObservableList<allDetails>) dataall);
}

public Object auswahl(){
Object auswahlFirma = boxFirma.getValue();
return auswahlFirma;
}

//DropDown auswahl Firmen
@FXML
public void dropdownFirmenButton(){
List<allDetails> listedropdownfirmen = dropdownFirmen();
dataall = FXCollections.observableArrayList(listedropdownfirmen);
loadalldetails();
}[/CODE]

Ich habe jetzt mal nur das nötigste aus dem Code Kopiert hoffe das reicht.
Danke Im Vorraus 🙂
 
Deine Frage ist wirklich, wie man Parameter benutzt?

Mit Datenbank und GUI sollte man erst anfangen, wenn man die Grundlagen drauf hat – und sowas ist absolute Grundlage für alles.
 
Wie ich Parameter benutze ist mir klar nur muss ich ja jetzt quasi zurück gehen was aber irgendwie nicht funktioniuert da ich die Klassen mit zb Controller extends DBConnection in eine richtung abhängig gemacht habe oder ich habe gerade eine massiven denkfehler 🤔
 
Controller extends DBConnection
Das ist so wirklich in deinem Code?

Dann kann ich mich nur wiederholen:
Mit Datenbank und GUI sollte man erst anfangen, wenn man die Grundlagen drauf hat – und sowas [Parameter und sinnvoller Einsatz von Vererbung] ist absolute Grundlage für alles.


  • Du solltest dabei keine Vererbung nutzen
  • Parameter in Prepared Statements solltest du nicht über String-konkatenierung "einsetzen"
  • Casts solltest du vermeiden
  • Zur Übergabe von Parametern an andere Methoden solltest du einfach ganz normale Parameter nutzen. Dein Satz oben spricht dafür, dass es da noch Verständnisprobleme gibt...
 
Ich habs danke. Hat sich halt mit den Vererbungen angeboten und auch bis jetzt alles so geklappt war einfach schnell geschrieben und nicht nachgedacht.
 

Neue Themen


Zurück
Oben