302班

          java突擊隊
          posts - 151, comments - 74, trackbacks - 0, articles - 14
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          JTable調用數據庫

          Posted on 2007-06-12 00:57 停留的風 閱讀(1602) 評論(0)  編輯  收藏 所屬分類: 快速前進的Java


          數據庫的操作:
           public ArrayList SelIdMed(String Id){
                Database DB=new Database();//Database中封裝了數據庫連接,打開、執行的方法
             String sql="select * from medInfo where medId="+Integer.parseInt(Id);
                ArrayList<Medicine> list=null;   //Medicine是一個有幾種屬性的實體類
                Medicine med=null;
                try{
                 DB.OpenCon();
                 rs=DB.executeQuery(sql);
                 list=new ArrayList<Medicine>();
                    while(rs.next()){
                    med=new Medicine();
                     med.setMedicineId(rs.getString("medId"));
                     med.setMedicineName(rs.getString("medName"));
                     med.setUnit(rs.getString("unit"));
                     med.setQuantity(rs.getDouble("quantity"));
                     med.setSideEffect(rs.getString("sideEffect"));        
                     list.add(med);
                    }
                }catch(Exception e){
                 e.getStackTrace();
                }finally{
                 try{
                  DB.closeStmt();
                  DB.closeCon();
                  }catch(Exception e){
                   System.out.println(e.getMessage());
                  }
                }
                return list;
               }
          為查詢button添加事件,讀取數據
          public void actionPerformed(ActionEvent e) {  
            TableModel tm=getJTable1().getModel();
               DefaultTableModel dtm=(DefaultTableModel)tm;
               
            Object obj=e.getSource();
            if(obj==jButton)
            {    
             pId = (String)jComboBox1.getSelectedItem();//一個下拉列表框
             MedBean md=new MedBean();   //MedBean類中定義了上述的方法
             ArrayList<Medicine>list=md.SelIdMed(pId);
             }
             int rowcount=dtm.getRowCount();
                   for(int i=rowcount-1;i>=0;i--){
                dtm.removeRow(i);
                }
             for(Medicine med:list){
              Object[] object={med.getMedicineId(),med.getMedicineName(),med.getQuantity(),med.getSideEffect(),med.getUnit()};
               dtm.addRow(object);
             }    
             
            } 
            else
            {
             this.dispose();   
            }  
           }
          第二種讀取數據的方法:
            public void actionPerformed(ActionEvent e) {  
            TableModel tm=getJTable1().getModel();
               DefaultTableModel dtm=(DefaultTableModel)tm;
               
            Object obj=e.getSource();
            if(obj==jButton)
             {    
             pId = (String)jComboBox1.getSelectedItem();
             MedBean md=new MedBean();
             Iterator iterator=md.SelIdMed(pId).iterator();
             while(iterator.hasNext()){
                Medicine med=(Medicine) iterator.next();
               Object[] object={med.getMedicineId(),med.getMedicineName(),med.getQuantity(),med.getSideEffect(),med.getUnit()};
               dtm.addRow(object);
              }
             int rowcount=dtm.getRowCount();
                   for(int i=rowcount-1;i>=0;i--){
                dtm.removeRow(i);
                }  
                }    
            } 
            else
            {
             this.dispose();   
            }
            
           }
          對于表的屬性要做修改
          Object[][] tabledata={};
          private String[] colName={"編號","醫生姓名","醫生電話","開始時間","終止時間","用過次數","可用次數"};
               if (jTable == null) {
              DefaultTableModel model=new DefaultTableModel(tabledata,column){
                public   boolean   isCellEditable(int   row,   int   column)  
                 {  
                 return   false;  
                 };  
              };
              jTable = new JTable(model);
              jTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

          主站蜘蛛池模板: 龙川县| 肇州县| 政和县| 海晏县| 特克斯县| 永和县| 镇坪县| 茂名市| 墨竹工卡县| 余庆县| 舟曲县| 莱西市| 乌拉特中旗| 峨边| 西峡县| 清新县| 武定县| 重庆市| 黄大仙区| 环江| 五台县| 图木舒克市| 怀来县| 报价| 陇川县| 江门市| 江都市| 南木林县| 理塘县| 延吉市| 沧源| 邹城市| 夏河县| 漳浦县| 秦安县| 丰城市| 兴文县| 伊通| 平陆县| 西峡县| 金秀|