📄 datapagedisplayframe.java
字号:
System.out.println("\nERROR:----- SQLException -----\n"); System.out.println("Message: " + ex.getMessage( )); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); } } } void nextpageButton_actionPerformed(ActionEvent e) { // 处理“后一页”按钮情况 try { pagenum++; // 页码数加1 if(pagenum>lastpagenum) { // 判断是否已经是最后一页 pagenum--; JOptionPane msg = new JOptionPane(); JOptionPane.showMessageDialog(DataPageDisplayFrame.this, "您已经到达最后一页!", "您已经到达最后一页!", 1); } Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 实例化JDBC-ODBC桥的驱动 String url = "jdbc:odbc:TestDbStu"; // 设置连接字符串 connection = DriverManager.getConnection(url); // 连接数据库 statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); sql = "select * from studentbase "; rs = statement.executeQuery(sql); vector.removeAllElements(); // 初始化向量对象 for(int i=1;i<=(pagenum-1)*everypagenumber;i++){ // 将游标移到应显示的位置处 rs.next(); } String displaypage=pagenum+"/"+lastpagenum; pagedisplayField.setText(displaypage) ; // 显示当前页码情况 tm.fireTableStructureChanged(); // 更新表格内容 int j=(pagenum-1)*everypagenumber+1; while(rs.next()){ if(j<=pagenum*everypagenumber) { // 限定每页显示的记录 Vector rec_vector = new Vector(); // 从结果集中取数据放入向量rec_vector中 rec_vector.addElement(String.valueOf(rs.getInt(1))); rec_vector.addElement(rs.getString(2)); rec_vector.addElement(String.valueOf(rs.getInt(3))); rec_vector.addElement(rs.getString(4)); rec_vector.addElement(rs.getString(5)); vector.addElement(rec_vector); // 向量rec_vector加入向量vector中 } j++; } tm.fireTableStructureChanged(); // 更新表格,显示向量vector的内容 } catch(SQLException ex){ // 捕捉异常 System.out.println("\nERROR:----- SQLException -----\n"); while (ex != null) { System.out.println("Message: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); ex = ex.getNextException(); } } catch(Exception ex ) { ex.printStackTrace(); } finally { try { if(statement != null) { statement.close(); // 关闭Statement接口实例 } if(connection != null) { connection.close(); // 关闭Connection接口实例 } } catch (SQLException ex) { System.out.println("\nERROR:----- SQLException -----\n"); System.out.println("Message: " + ex.getMessage( )); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); } } } void confirmButton_actionPerformed(ActionEvent e) { // 处理“确认”按钮情况 everypagenumber=Integer.parseInt(recordnumField.getText() ) ;// 获得每页显示记录个数变量的数值 t=everypagenumber; } void prepageButton_actionPerformed(ActionEvent e) { // 处理“前一页”按钮情况 try { pagenum--; // 页码数减1 if(pagenum<=0) { // 判断是否已经是第一页 pagenum++; JOptionPane msg = new JOptionPane(); JOptionPane.showMessageDialog(DataPageDisplayFrame.this, "您已经到达首页!", "您已经到达首页!", 1); } Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 实例化JDBC-ODBC桥的驱动 String url = "jdbc:odbc:TestDbStu"; // 设置连接字符串 connection = DriverManager.getConnection(url); // 连接数据库 statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); sql = "select * from studentbase "; rs = statement.executeQuery(sql); String displaypage=pagenum+"/"+lastpagenum; pagedisplayField.setText(displaypage) ; // 显示当前页码情况 vector.removeAllElements(); // 初始化向量对象 tm.fireTableStructureChanged(); // 更新表格,显示向量vector的内容 for(int i=1;i<=(pagenum-1)*everypagenumber;i++){ // 将游标移到应显示的位置处 rs.next(); } for(int i=pagenum*everypagenumber+1;i<=(pagenum+1)*everypagenumber;i++){ rs.next() ; Vector rec_vector = new Vector(); // 从结果集中取数据放入向量rec_vector中 rec_vector.addElement(String.valueOf(rs.getInt(1))); rec_vector.addElement(rs.getString(2)); rec_vector.addElement(String.valueOf(rs.getInt(3))); rec_vector.addElement(rs.getString(4)); rec_vector.addElement(rs.getString(5)); vector.addElement(rec_vector); // 向量rec_vector加入向量vector中 tm.fireTableStructureChanged(); // 更新表格,显示向量vector的内容 } } catch(SQLException ex){ // 捕捉异常 System.out.println("\nERROR:----- SQLException -----\n"); while (ex != null) { System.out.println("Message: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); ex = ex.getNextException(); } } catch(Exception ex ) { ex.printStackTrace(); } finally { try { if(statement != null) { statement.close(); // 关闭Statement接口实例 } if(connection != null) { connection.close(); // 关闭Connection接口实例 } } catch (SQLException ex) { System.out.println("\nERROR:----- SQLException -----\n"); System.out.println("Message: " + ex.getMessage( )); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); } } } void lastpageButton_actionPerformed(ActionEvent e) { // 处理“尾页”按钮情况 try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 实例化JDBC-ODBC桥的驱动 String url = "jdbc:odbc:TestDbStu"; connection = DriverManager.getConnection(url); statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); sql = "select * from studentbase "; int recordnum=0; rs = statement.executeQuery(sql); while(rs.next()){ // 统计数据表中的记录个数 recordnum++; } int t=recordnum%everypagenumber; // 求得分页显示的页码总数 if (t!=0) { pagenum=(recordnum/everypagenumber+1); } else { pagenum=recordnum/everypagenumber; } lastpagenum=pagenum; String displaypage=lastpagenum+"/"+lastpagenum; pagedisplayField.setText(displaypage) ; // 显示当前页码情况 int displaynum=(recordnum%everypagenumber); // 取得最后一页应显示的记录数 if (displaynum==0) { displaynum=everypagenumber; } vector.removeAllElements(); // 初始化向量对象 tm.fireTableStructureChanged(); // 更新表格,显示向量vector的内容 for(int i=0;i<=displaynum;i++){ // 将游标移到应显示的位置处 rs.previous() ; } for(int i=1;i<=displaynum;i++){ rs.next() ; Vector rec_vector = new Vector(); // 从结果集中取数据放入向量rec_vector中 rec_vector.addElement(String.valueOf(rs.getInt(1))); rec_vector.addElement(rs.getString(2)); rec_vector.addElement(String.valueOf(rs.getInt(3))); rec_vector.addElement(rs.getString(4)); rec_vector.addElement(rs.getString(5)); vector.addElement(rec_vector); // 向量rec_vector加入向量vector中 tm.fireTableStructureChanged(); // 更新表格,显示向量vector的内容 } } catch(SQLException ex){ // 捕捉异常 System.out.println("\nERROR:----- SQLException -----\n"); while (ex != null) { System.out.println("Message: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); ex = ex.getNextException(); } } catch(Exception ex ) { ex.printStackTrace(); } finally { try { if(statement != null) { statement.close(); // 关闭Statement接口实例 } if(connection != null) { connection.close(); // 关闭Connection接口实例 } } catch (SQLException ex) { System.out.println("\nERROR:----- SQLException -----\n"); System.out.println("Message: " + ex.getMessage( )); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("ErrorCode: " + ex.getErrorCode()); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -