每次actionPerformed
调用方法时(我假设在按下某个按钮时调用它),您再次执行查询.因此next()
总会给你第一个元素并previous
返回false.
您应该将所有行读入某些数据结构,例如ArrayList
(作为初始化步骤,而不是单击按钮时),并保持当前索引List
,这将允许您在单击按钮时向前或向后移动.
PS你不应该使用rs.next()
或rs.previous()
不检查返回值.如果这些方法返回false
,则不应调用诸如的方法rs.getInt("id")
,因为它们会抛出异常.
PPS一些JDBC驱动程序不支持previous()
,first
和last
方法,这意味着他们可能会抛出SQLFeatureNotSupportedException
.但是,next()
正如我所建议的那样,只有在初始化步骤中读取所有数据时才需要.
每次actionPerformed
调用方法时(我假设在按下某个按钮时调用它),您再次执行查询.因此next()
总会给你第一个元素并previous
返回false.
您应该将所有行读入某些数据结构,例如ArrayList
(作为初始化步骤,而不是单击按钮时),并保持当前索引List
,这将允许您在单击按钮时向前或向后移动.
PS你不应该使用rs.next()
或rs.previous()
不检查返回值.如果这些方法返回false
,则不应调用诸如的方法rs.getInt("id")
,因为它们会抛出异常.
PPS一些JDBC驱动程序不支持previous()
,first
和last
方法,这意味着他们可能会抛出SQLFeatureNotSupportedException
.但是,next()
正如我所建议的那样,只有在初始化步骤中读取所有数据时才需要.