java - 如何将数据查询到 JFXComboBox
问题描述
我一直在尝试从我的数据库中查询数据并将其传递给我JFXComboBox
的 as 值
我尝试将它包装到 awhile loop
并将每个项目添加到,JFXComboBox
但它仍然没有显示我的数据中的值。
@FXML
JFXComboBox<String> combobox;
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
String sql = "Select * from transaction_type from transactions";
try(Connection conn = SQLConnection.getConnection(); /*Singleton Class DB Connection*/
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery(sql))
{
while(rs.next()){
combobox.getItems.add(rs.getString(2));
}
}
catch(SQLException e)
{
serr(e.getNessage());
}
}
我希望 中的项目JFXComboBox
是在交易中找到的价值
解决方案
正确的方法是创建一个模型类,但是,我认为这可以帮助你。
创建一个方法:
public static void fillListFromDataBase (Connection conn, ObservableList<String> list) {
String sql = "SELECT fieldName FROM transactions";
try {
Statement statement = conn.createStatement();
ResultSet rs = statement.executeQuery(sql))
while(rs.next()) {
list.add(rs.getString("fieldName"));
}
} catch(SQLException e) {
e.printStackTrace();
}
}
然后调用方法加载列表中的数据,并将列表绑定到Combobox:
JFXComboBox<String> combobox;
private ObservableList<String> list = FXCollections.observableArrayList();
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
Connection conn = SQLConnection.getConnection();
fillListFromDataBase (conn, list);
combobox.setItems(list);
}
推荐阅读
- android - 无法在抽象类中注入应用程序上下文
- python - 将线轮廓仪与多处理一起使用
- visual-studio-2017 - 为什么 VS2017 CodedUI 测试刚刚停止工作
- android - 带有标签片段的片段后台堆栈
- excel - 如何将此下拉列表合并到我的程序代码 VBA 中
- python-3.x - Mypy 将类识别为函数
- django - 来自 DetailView 中类别的 url 路径
- javascript - 为什么我的数组缓冲区在服务器端是空的?
- c# - 如何从 XML 文档中获取值
- javascript - 为什么 Openerp7 JS 文件不能在 odoo v11 中工作,但在 odoo v10 中工作正常?