JavaFX TableView mit Daten aus der Datenbank füllen?
Hey Leute,
ich versuche gerade meine Tabelle mit Daten aus der Datenbank zu füllen aber dabei bekomme ich eine Fehlermeldung. Kann mir jemand dabei helfen?
Users Klasse:
public class Users {
private int id;
private String userToken;
private String firstname;
private String lastname;
private String emailAddress;
private String creationTime;
private Button deleteButton;
public Users(int id, String userToken, String firstName, String lastName, String emailAddress, String creationTime) {
this.id = id;
this.userToken = userToken;
this.firstname = firstName;
this.lastname = lastName;
this.emailAddress = emailAddress;
this.creationTime = creationTime;
}
}
Die Fehlermeldung:
UserController:
public class UserController {
@FXML
private TableColumn<Users, Integer> idCol;
@FXML
private TableColumn<Users, String> creationTimeCol;
@FXML
private TableColumn<Users, String> emailCol;
@FXML
private TableColumn<Users, String> firstnameCol;
@FXML
private TableColumn<Users, String> lastnameCol;
@FXML
private TableColumn<Users, String> deleteCol;
@FXML
private TableColumn<Users, String> userTokenCol;
@FXML
private TableView<Users> table;
@FXML
private TextField textField;
public void printUser() {
ObservableList<Users> allUserList = FXCollections.observableArrayList();
try {
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:2020/database", "root", "");
System.out.println("Connected");
//PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM usertable");
ResultSet resultSet = connection.createStatement().executeQuery("SELECT * FROM usertable");
while (resultSet.next()) {
allUserList.add(new Users(Integer.parseInt(resultSet.getString("id")),
resultSet.getString("userToken"), resultSet.getString("firstName"),
resultSet.getString("lastName"), resultSet.getString("emailAddress"),
resultSet.getString("creationTime")));
}
} catch (SQLException ignored) {
ignored.printStackTrace();
}
idCol.setCellValueFactory(new PropertyValueFactory<Users, Integer>("id"));
userTokenCol.setCellValueFactory(new PropertyValueFactory<Users, String>("userToken"));
firstnameCol.setCellValueFactory(new PropertyValueFactory<Users, String>("firstName"));
lastnameCol.setCellValueFactory(new PropertyValueFactory<Users, String>("lastName"));
emailCol.setCellValueFactory(new PropertyValueFactory<Users, String>("emailAddress"));
creationTimeCol.setCellValueFactory(new PropertyValueFactory<Users, String>("creationTime"));
table.setItems(allUserList);
System.out.println("all user got");
}
}
