Ich arbeite mit JDBC. In einer früheren jForm stelle ich den Benutzernamen des Benutzers, der gerade angemeldet ist, mit seinen Anmeldeinformationen ein und übergebe ihn an das Folgende.Getter-Methode gibt null zurück
public void setUser(String user) {
this.username = user;
}
private String getUser() {
return username;
}
Und dann habe ich es zu meiner SQL-Anweisung bin vorbei unter
PreparedStatement st;
ResultSet rs;
Connection conn;
try {
String query = "SELECT * FROM PAYMENTS WHERE USERNAME = (?)";
conn = mq.getConnection();
st = conn.prepareStatement(query);
st.setString(1, getUser());
rs = st.executeQuery();
} catch (SQLException ex) {
Logger.getLogger(MainView.class.getName()).log(Level.SEVERE, null, ex);
}
ich ein Null-Ergebnis erhalte, wenn diese Aussage läuft. Obwohl ich die gleiche Getter-Methode in einem jLabel verwendet habe und es hat gut funktioniert. Ich bin mir nicht sicher, warum ich null erhalte.
Dies ist, wo ich den Setter in der vorherigen jForm aufrufen.
Sie sind nicht genug Kontext bereitstellt. Zeige mehr Code. –
sieht aus wie Sie den Getter vor dem Setter aufrufen .... Post mehr Code ... –
Nicht sicher, dass es Ihr Problem löst, aber Sie ersetzen sollte '(?)' Durch '?' – davidxxx