📄 sort.java
字号:
/* * Sort.java * 说明:类别档案 * 编写:倪少春 * Created on 2004年12月31日, 下午4:43 */public class Sort extends javax.swing.JInternalFrame { private int rowCount=1;//行数 private final int colCount=2;//列数 private Object[][] ob=null; private DataConnect dc=null;//自定义数据库连接程序 //自定义MODEL用在JTable private class MyTable extends javax.swing.table.DefaultTableModel { private Class[] types =null; public MyTable(Object[][] ob) { super(ob,new String[]{"类别ID", "类别名称"}); types= new Class[2]; try { types[0]=Class.forName("java.lang.Integer"); types[1]=Class.forName("java.lang.String"); } catch(ClassNotFoundException e) { System.out.println("类路径安装错误"); } } public Class getColumnClass(int columnIndex) { return types [columnIndex]; } }; private MyTable mytable; private void sort_Refresh() { try { java.sql.Statement stmt=dc.getStatement(); java.sql.ResultSet rs=stmt.executeQuery("select count(id) from BookSort"); rs.next(); rowCount=rs.getInt(1); ob=new Object[rowCount][colCount]; //if(rs.getInt(1)==0) if(rowCount==0) { rowCount=1; ob=new Object[rowCount][colCount]; javax.swing.JOptionPane.showMessageDialog (this,"图书类别库无数据,请新增数据!","", javax.swing.JOptionPane.ERROR_MESSAGE); } else { rs=null; rs=stmt.executeQuery("select id,name from BookSort"); int i=0; while(rs.next()) { ob[i][0]=new Integer(rs.getInt("id")); ob[i][1]=rs.getString("name"); i++; } } mytable=new MyTable(ob); jtb_sort.setModel(mytable); stmt=null;rs=null; } catch(java.sql.SQLException sqle) { javax.swing.JOptionPane.showMessageDialog(this,"数据表显示错误"); } } /** Creates new form Sort */ public Sort(DataConnect dc) { initComponents(); this.dc=dc; this.sort_Refresh(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents jScrollPane1 = new javax.swing.JScrollPane(); jtb_sort = new javax.swing.JTable(); jToolBar = new javax.swing.JToolBar(); jb_insert = new javax.swing.JButton(); jb_save = new javax.swing.JButton(); jb_delete = new javax.swing.JButton(); jb_Refresh = new javax.swing.JButton(); setClosable(true); setResizable(true); setTitle("\u7c7b\u522b\u6863\u6848"); jtb_sort.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null} }, new String [] { "类别ID", "类别名称" } ) { Class[] types = new Class [] { java.lang.Integer.class, java.lang.String.class }; public Class getColumnClass(int columnIndex) { return types [columnIndex]; } }); jScrollPane1.setViewportView(jtb_sort); getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER); jb_insert.setText("\u63d2\u884c"); jb_insert.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); jb_insert.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jb_insertMouseClicked(evt); } }); jToolBar.add(jb_insert); jb_save.setText("\u4fdd\u5b58"); jb_save.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); jb_save.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jb_saveMouseClicked(evt); } }); jToolBar.add(jb_save); jb_delete.setText("\u5220\u9664"); jb_delete.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); jb_delete.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jb_deleteMouseClicked(evt); } }); jToolBar.add(jb_delete); jb_Refresh.setText("\u5237\u65b0"); jb_Refresh.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); jb_Refresh.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { jb_RefreshMouseClicked(evt); } }); jToolBar.add(jb_Refresh); getContentPane().add(jToolBar, java.awt.BorderLayout.NORTH); pack(); }//GEN-END:initComponents private void jb_RefreshMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jb_RefreshMouseClicked sort_Refresh(); }//GEN-LAST:event_jb_RefreshMouseClicked private void jb_saveMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jb_saveMouseClicked //保存数据 javax.swing.table.TableModel tm=jtb_sort.getModel(); try { java.sql.PreparedStatement ps_cx=dc.getPreparedStatement( "SELECT COUNT(id) FROM BookSort WHERE id=?"); java.sql.PreparedStatement ps_update=dc.getPreparedStatement( "UPDATE BookSort SET name=? where id=?"); java.sql.PreparedStatement ps_insert=dc.getPreparedStatement( "INSERT INTO BookSort(id,name) VALUES(?,?)"); java.sql.ResultSet rs=null; for(int i=0;i<tm.getRowCount();i++) { if(tm.getValueAt(i,0)!=null && tm.getValueAt(i,1)!=null) { int id=Integer.parseInt(tm.getValueAt(i,0).toString()); ps_cx.setInt(1, id); rs=ps_cx.executeQuery();rs.next(); if(rs.getInt(1)==1) { String Name=tm.getValueAt(i, 1).toString(); int Id=Integer.parseInt(tm.getValueAt(i, 0).toString()); ps_update.setString(1,Name); ps_update.setInt(2,Id); ps_update.execute(); } else { String Name=tm.getValueAt(i, 1).toString(); int Id=Integer.parseInt(tm.getValueAt(i, 0).toString()); ps_insert.setInt(1,Id); ps_insert.setString(2,Name); ps_insert.execute(); } } else { javax.swing.JOptionPane.showMessageDialog (this,"录入表中含有未输入或未确认的信息\n请检查!"); return; } } sort_Refresh(); } catch(java.sql.SQLException sqle) { javax.swing.JOptionPane.showMessageDialog (this,"数据库操作错误"+sqle,"错误提示",javax.swing.JOptionPane.ERROR_MESSAGE); } }//GEN-LAST:event_jb_saveMouseClicked private void jb_insertMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jb_insertMouseClicked //插行 this.jb_saveMouseClicked(null); Object [][] old= ob; rowCount=rowCount+1; ob=new Object[rowCount][colCount]; for(int i=0 ; i<old.length;i++) { ob[i][0]=old[i][0]; ob[i][1]=old[i][1]; } mytable=new MyTable(ob); this.jtb_sort.setModel(mytable); }//GEN-LAST:event_jb_insertMouseClicked private void jb_deleteMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jb_deleteMouseClicked //删除一行 String IdStr= javax.swing.JOptionPane.showInputDialog(this,"请输入需删除ID号"); if(IdStr!=null) { char[] c_id=IdStr.toCharArray(); for(int i=0;i<c_id.length;i++) if(c_id[i]<'0'||c_id[i]>'9') { javax.swing.JOptionPane.showMessageDialog(this,"请输入数字"); return; } int Id=Integer.parseInt(IdStr); System.out.println(Id); try { java.sql.PreparedStatement ps_del=dc.getPreparedStatement ("DELETE FROM BookSort WHERE id=?"); ps_del.setInt(1, Id); ps_del.execute(); sort_Refresh(); } catch(java.sql.SQLException sqle) { javax.swing.JOptionPane.showMessageDialog (this,"数据表删除错误"); } } }//GEN-LAST:event_jb_deleteMouseClicked // 变量声明 - 不进行修改//GEN-BEGIN:variables private javax.swing.JScrollPane jScrollPane1; private javax.swing.JToolBar jToolBar; private javax.swing.JButton jb_Refresh; private javax.swing.JButton jb_delete; private javax.swing.JButton jb_insert; private javax.swing.JButton jb_save; private javax.swing.JTable jtb_sort; // 变量声明结束//GEN-END:variables }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -