如何正确地将数据从mysql数据库填充到javafx中的observableList?我使用:将数据库中的值填充到javafx中的ObservableList中
ObservableList<String> deptList=FXCollections.observableArrayList("CSE","ME");
手动填充值ObservableList,他们可是我不知道如何从MySQL数据库获取数据并填充到观察的名单。
如何正确地将数据从mysql数据库填充到javafx中的observableList?我使用:将数据库中的值填充到javafx中的ObservableList中
ObservableList<String> deptList=FXCollections.observableArrayList("CSE","ME");
手动填充值ObservableList,他们可是我不知道如何从MySQL数据库获取数据并填充到观察的名单。
为了从你的mysql数据库中获得一个List,打开一个到你的mysql数据库的数据库连接并执行你的查询。 (我不打算写这一个你,因为有足够的goodexamplesonline。)一旦你有你的ResultSet:
List<String> listOfSomething;
ResultSet rs = statement.executeQuery(query);
while (rs.next()) {
String current = rs.getString("whatever");
listOfSomething.add(current);
}
您可以直接从数据库中获取列表,并将其转换为可观察到的列表:
List listOfSomething = new ArrayList(ofWhatever);
ObservableList<String> observableListOfSomething = FXCollections.observableArrayList(listOfSomething);
这是用于填充Intoto公司一个的ListView(JavaFX的(FXML))的数据的代码。
private void populateListView {
try {
String query = "select * from main_table";
PreparedStatement prestate = model.getConnection().prepareStatement(query);
ResultSet result = prestate.executeQuery();
while (result.next()) {
String current = result.getString("title");
ObservableList<String> list = FXCollections.observableArrayList(current);
listview.getItems().addAll(list);
}
prestate.close();
result.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
谢谢。这篇文章中提到的答案也适用于我的案例。 我正在使用postgres
作为数据库。
创建表视图
@FXML private TableView<AccountMaster> detailstable;
我从数据库获取信息并将其存储在一个通用的清单。
List<Student> list = DatabaseClient.getInstance().studentDetailsSearch(id,name);
创建通用类型的可观察的名单,然后在观察的名单设置列表值。
ObservableList<AccountMaster> searchDetailsList = FXCollections.observableArrayList(list);
表视图设置它
detailstable.getItems().addAll(searchDetailsList);
有了这个,我们可以在javafx
你能解释更多的位填充从数据库值到
ObservableList
?我是新来的JavaFX如何从数据库中获取列表到arraylist? –这个问题涉及到你的数据库,而不是javafx。你使用的是哪个数据库? – TangledUpInBlue
我正在使用mysql数据库 –