【问题标题】:How can i use a JTABLE to insert data into a database如何使用 JTABLE 将数据插入数据库
【发布时间】:2013-08-27 14:25:42
【问题描述】:

我正在申请将考试成绩插入数据库。我已经设法使用 JTable 来显示数据库中的数据,但现在我想使用相同的 JTable 将数据插入数据库。我该怎么做?我将不胜感激任何帮助

【问题讨论】:

  • 您的意思是,编辑 JTable 中的现有值,然后更新数据库中的值,还是从表中取出所有元素,然后将它们全部添加到数据库中?
  • 获取所有元素然后添加到数据库中
  • 你用什么来填充JTable?你能在答案中展示你的代码示例吗?
  • 我正在使用 select sql 查询数据库中的表,然后在 JTable 中显示结果集。
  • 你是如何从你的 JTable 中改变 TableModel 的?您使用什么结构,如果您使用 ArrayList 来填充您的 Jtable,您可以使用相同的结构来编辑您的元素,只需创建一个实现 TableModelListener 的类,并覆盖 tableChanged 方法以进行更新

标签: java sql swing netbeans


【解决方案1】:

你可以:

1) 允许用户选择他们想要编辑的行。

2) 允许用户单击一个按钮,该按钮打开一个新窗口,其中的文本字段填充了所选行中的数据。

3) 在这个新打开的窗口中添加一个“保存”按钮,单击该按钮时,将查询数据库并“更新”其中 xyz = 已选择的行。

【讨论】:

    【解决方案2】:

    您如何更改您的JTableTableModel?您使用什么结构,如果您使用ArrayList 来填充您的Jtable,您可以使用相同的结构来编辑您的元素,只需创建一个实现TableModelListener 的类,然后覆盖tableChanged 中的方法为了进行更新

    编辑:好的,所以你必须从 JTable 中获取模型,

    tbl_report.getModel().getValueAt(row, column); 这将为您提供来自特定单元格的值,因为您想要所有 JTable 值,您可以使用 for(实际上是两个 for)来实现这一点:

     ArrayList<Object> value= new  ArrayList<Object> ();
        for (int column = 0; column < resumenTable.getColumnCount(); column++) {
            for (int row = 0; row < resumenTable.getRowCount(); row++) {
             value.add(resumenTable.getModel().getValueAt(row, column));
            }
        }
    

    您必须强制转换 ArrayList 元素才能构建您的查询

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-08
      • 1970-01-01
      • 2015-02-02
      • 2015-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多