下一个按钮的 Java 代码

Posted

技术标签:

【中文标题】下一个按钮的 Java 代码【英文标题】:Java Code for the next button 【发布时间】:2013-04-03 06:44:50 【问题描述】:

您好,这是我的下一个按钮的 java 代码。

但它只进入一条记录,即在最后一条记录之后它只移动到第一条记录。

如何在整个数据库条目中移动它。

请给我一些建议。

public void Next() 
    Connection con = null;
    ResultSet rs = null;
    try 
        con = DBConnection();
        PreparedStatement pstmt = con.prepareStatement("select * from data", ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
        rs = pstmt.executeQuery();
        if (rs.next()) 
            field1.setText(rs.getString("Name"));
            field2.setText(String.valueOf(rs.getInt("Age")));
         else 
            rs.previous();
            JOptionPane.showMessageDialog(nxtbtn, "end of file");
        
     catch (Exception e) 
        // TODO: handle exception
     finally 
        try 
            rs.close();
         catch (SQLException err) 
            JOptionPane.showMessageDialog(nxtbtn, err.getMessage());
            // TODO: handle exception
        
    

【问题讨论】:

为了获得帮助,请尽快发布SSCCE,简短,可运行,可编译, 为什么原因在PreparedStatement declared ResultSet.CONCUR_UPDATABLE` 【参考方案1】:

当您调用 next 时,它会重新加载数据库中的所有结果并将光标移动到第一行之前,调用 rs.next 将移动到第一行。

您是否查询过一次,大概是在您需要显示下一条记录时。

在您的next 方法中,只需调用rs.next() 即可将光标移动到结果集中的下一个可用行。

当然,您需要继续管理错误状态;)

【讨论】:

【参考方案2】:

您需要在next() 方法之外获取resultset。每次调用next() 都会重置resultset,然后cursor 会重新开始。

【讨论】:

【参考方案3】:

如果理解正确,您想使用下一步按钮点击结果集吗?

然后您应该读取数据库并将其存储在下一个按钮方法之外的结果集中。

目前看来,您每次点击都会创建一个新的结果集,并且只读取第一组数据。

private Connection con = DBConnection();
private ResultSet rs = null;
private Statement stmt = null;
public void onLoad()

stmt = con.createStatement();
rs = stmt.executeQuery("YOUR-CODE-HERE");

现在在下一个方法中,每次点击都会遍历 rs

【讨论】:

【参考方案4】:

rs.next() 将光标移动到下一个可用行。这就是它显示一条记录的原因。使用while(rs.next())

【讨论】:

【参考方案5】:

像下面这样向前移动一条记录

rs.next()

像下面这样浏览所有“下一个”记录

while(rs.next())

像下面这样向后移动

rs.previous()

【讨论】:

以上是关于下一个按钮的 Java 代码的主要内容,如果未能解决你的问题,请参考以下文章

JAVA按下按钮并等待几秒钟[重复]

Java Swing:在 JPanel 的组件下绘制?

如何暂停整个程序的执行,直到在 JAVA 中按下按钮?

java swing make分页Next / Prev,按按钮时的下一个按钮Forword Record或Prev goback

Java程序设计:界面有两个按钮(上一张和下一张),当单击上一张显示上一张图片,单击下一张显示下一张图片

java - 如何在java脚本或jquery中单击两次相同的按钮时计算间隔时间