Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建插入数据库数据的弹出表_Java_Swing - Fatal编程技术网

Java 创建插入数据库数据的弹出表

Java 创建插入数据库数据的弹出表,java,swing,Java,Swing,这是一个理论问题。假设我建立了数据库连接并运行了查询 "select * from securitysystem.employee" 我想填充一个表,自动调整查询返回的数据。我该怎么做?步骤: 循环遍历结果并将结果转换为对象集合(员工或其他建模对象) 将收藏交给您的GUI 让GUI创建一个包含JTable的新JDialog 为数据构建表模型时,它需要处理对象集合,或者需要将其转换为它可以处理的数据格式(对于DefaultTableModel,例如Object[]] 将对话框设置为可见 您需要以

这是一个理论问题。假设我建立了数据库连接并运行了查询

"select * from securitysystem.employee"
我想填充一个表,自动调整查询返回的数据。我该怎么做?

步骤:

  • 循环遍历结果并将结果转换为对象集合(员工或其他建模对象)
  • 将收藏交给您的GUI
  • 让GUI创建一个包含JTable的新JDialog
  • 为数据构建表模型时,它需要处理对象集合,或者需要将其转换为它可以处理的数据格式(对于
    DefaultTableModel
    ,例如Object[]]
  • 将对话框设置为可见

  • 您需要以某种方式将该数据作为双数组返回(理想情况下,您需要某种类型的表模型,但对于快速和脏数据,双数组是可以的)

    • JTable添加到JScrollPane
    • 将JScrollPane添加到面板或框架中
    • 最大限度地拉伸(例如,BroderLayout中的中央面板)
    • 设置table.setModel(新的DefaultTableModel(myDoubleArray))
    • 调用table.updateUI()

    应该可以了。

    看到这个
    我真的觉得很难让这个工作
    -做什么工作?您知道在执行SQL查询时如何读取ResultSet中返回的数据吗。您知道如何将数据加载到TableModel中吗?我对java非常陌生,因此我发现很难做到这一点:(你的问题太宽泛,无法给出非常详细的答案。如果你是Java新手,那么你应该专注于学习一些基础知识,因为有很多教程涵盖了这个常见问题的各个方面。我对Java非常陌生,所以我发现很难做到这一点:(-1代表table.updateUI()。不需要这样做。Swing在内部使用updateUI()方法进行LAF更改。当组件的属性更改时,Swing组件将自动重新绘制自己。在这种情况下,
    setModel(…)
    方法足以让表自身重新绘制。我不认为setModel(…)已经足够了。应用程序需要知道数据模型已更改。需要在表上更新fireTableModelUpdated(),而不是updateUI()@OliverWatkins,这就是我投票失败的原因。您不需要调用fireTableModelUpdated()方法。该表将执行确保重新绘制该表所需的操作。这就是使用Swing的好处。使用setModel()方法所需的全部操作。