Javaswing:将数据从sql加载到java swing

问题描述 投票:-2回答:1

当我单击按钮时,它显示一个值。然后我再次单击,它仍然相同,如何单击按钮,然后接下来显示一个新值?

try {
 String bdUrl = jdbc:sqlserver://127.0.0.1:1433;databaseName=login;user=sa;password=123;"
 Connection conn  = DriverManager.getConnection(bdUrl);
 String sql = "select cauhoi , caul,cau2,cau3,caudung from tracnghiem";
 Statement statement = conn.createStatement();
 Resultset rs = statement.excuteQuery(sql);

 while (rs.next())
    {
      String cauhoil = rs.getString(1);
      String dapana = rs.getString(2);
      String dapanb = rs.getString(3);
      String dapanc = rs.getString(4);
      String dapand = rs.getString(5);

      lbl.setText(""+cauhoil);
      jrd1.setText(dapana);
      jrd2.setText(dapanb);
      jrd3.setText(dapanc);
      jrd4.setText(dapand);

    }}
  catch (Exception e)
  {
   System.out.println(e);
  }
java sql-server swing jbutton
1个回答
0
投票

它显示相同的值,因为您的SQL语句每次执行时都是相同的。因为您将不断更新循环中的Swing组件,所以您将始终在ResultSet中看到最后一个值。

相反,您需要:

  1. 创建一个自定义对象以存储数据库中每一行数据的5个值中的每个]
  2. 然后,您需要读取一次数据,并且在while循环内,需要使用5个值中的每一个创建该对象的实例。
  3. 然后该对象将被添加到ArrayList
  4. 单击按钮时,您将从ArrayList中获取一个对象,并在Swing组件中显示值。
  5. 然后增加索引变量,以便下次单击按钮时从ArrayList获取下一个对象。
© www.soinside.com 2019 - 2024. All rights reserved.