【问题标题】:How to set text on textarea?如何在textarea上设置文本?
【发布时间】:2016-06-02 06:21:27
【问题描述】:

我被困在up_address 行。我正在做一个更新数据库中值的项目,我一直在 textarea 中设置文本。

 try{       
        int row = user_table.getSelectedRow();
        String Table_clicked =(String)(user_table.getModel().getValueAt(row, 0));
        String sql="select * from userl where id ='"+Table_clicked+"' ";
        Statement st=con.createStatement();
        rs=st.executeQuery(sql);

        if(rs.next()){
            String up_nam= rs.getString("Name");
            up_name.setText(up_nam);
            String up_num= rs.getString("Number");
            up_number.setText(up_num);
            String up_cit= rs.getString("City");
            up_city.setText(up_cit);
            String up_addre= rs.getString("Address");
            up_address.setText(up_addre);

            String up_mod= rs.getString("Mode");
            up_mode.addItem(up_mod);
           String up_typ= rs.getString("Type");
            up_type.addItem(up_typ);
        }

    } 
    catch (Exception e) {
}

【问题讨论】:

  • 你所说的“卡住”是什么意思,是抛出一些错误,还是没有按预期工作?
  • 它没有抛出任何错误,也没有在 textarea 中设置任何值
  • 为什么在少数地方setText和在少数地方addItem
  • Table_clicked 的来源是否来自用户?看起来您那里可能存在 SQL 注入安全漏洞。
  • @Arulkumar additems 属于组合框

标签: java sql swing jdbc


【解决方案1】:

尝试使用追加功能:

up_address.append(up_addre);

有关更多信息,请参阅此主题:JTextArea setText is not working

【讨论】:

    【解决方案2】:

    它没有抛出任何错误,也没有在 textarea 中设置任何值

    你怎么知道它没有抛出任何错误?

    您正在使用:

    catch (Exception e) {}
    

    你永远不应该这样做,因为你永远不会知道你是否有 SQL 问题。

    你至少应该使用:

    catch (Exception e) { System.out.println(e); }
    

    此外,使用多个文本区域似乎不是一个合适的解决方案。我建议你应该使用 JTable。阅读 How to Use Tables 上的 Swing 教程部分了解基本信息

    然后您还可以查看Table From Database 中的Table From Database Example,了解在 JTable 中显示来自数据库的数据的简单代码。

    【讨论】:

      【解决方案3】:

      您在循环中使用up_address.setText(up_addre);,这意味着如果您在 rs(ResultSet 对象) 中获得多于一行,则您的 JTextField 对象 up_address 的值将被覆盖。

      并且您必须确保表“User1”中的字段必须是“Address

      你也可以试试下面的代码 try { // Put Your Code Here.... }catch (Exception e){System.out.println(e.getMessage());}

      如果出现任何错误,它将为您提供帮助......

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-06-22
        • 1970-01-01
        相关资源
        最近更新 更多