2011-12-28 33 views
0

次のコードを使用してMYSQLデータベースからデータを取得します.DB接続用の別のメソッド(GCotnStr)を作成し、このメソッドでこのコードを呼び出します。私の問題は、 "String StudName = TmpFlxTRs.getString(" StudName ");を使用することです。 JTableの値を取得および設定するためのmark1、mark2、resultのようなクラスです。特定の行を使用してデータを取得してJTableに表示する方法、Student Nameを使用してデータを取得する方法、 "String StudName = TmpFlxTRs.getString(" StudName ");"を使用せずにすべての学生名を取得します。 FOR LOOPを使用してください。データをデータベースから取得するループを使用して

package designstudent; 
import javax.swing.table.DefaultTableModel; 
import java.sql.*; 

public class FrmeA extends javax.swing.JFrame { 

    Statement TmpFlxTSt=null; 
     ResultSet TmpFlxTRs=null; 
     GContnStr GCS=new GContnStr(); 

    public FrmeA() { 
     initComponents(); 
    } 

public void initcon() 
    { 
try{ 
    DefaultTableModel model=(DefaultTableModel)jTable1.getModel(); 
      GCS.GContnStr(); 
      TmpFlxTSt= GCS.GCotnStr.createStatement(); 
      String select = "Select * from studentmaster"; 
      TmpFlxTRs = TmpFlxTSt.executeQuery(select); 

       int i = 0; 
       while (TmpFlxTRs.next()){ 

        String Name = TmpFlxTRs.getString("StudName"); 
        String Class = TmpFlxTRs.getString("StudClass"); 
        String Subj1 = TmpFlxTRs.getString("StudMrk1"); 
        String Subj2= TmpFlxTRs.getString("StudMrk2"); 
        String StudTot = TmpFlxTRs.getString("StudTot"); 
        String StudRes= TmpFlxTRs.getString("StudRes"); 
        String StudNo=TmpFlxTRs.getString("StudNo"); 
        String StudId=TmpFlxTRs.getString("StudId"); 
        model.addRow(new Object[]{Name,Class,Subj1,Subj2,StudTot,StudRes,StudId,StudNo}); 
} 
     } 
     catch (Exception e) { 
       System.out.println(e); 
      } 
       } 

    @SuppressWarnings("unchecked") 
    // <editor-fold defaultstate="collapsed" desc="Generated Code">       
    private void initComponents() { 

     jPanel1 = new javax.swing.JPanel(); 
     jPanel2 = new javax.swing.JPanel(); 
     CmdA = new javax.swing.JButton(); 
     CmdE = new javax.swing.JButton(); 
     CmdD = new javax.swing.JButton(); 
     cmdQ = new javax.swing.JButton(); 
     jPanel3 = new javax.swing.JPanel(); 
     jScrollPane1 = new javax.swing.JScrollPane(); 
     jTable1 = new javax.swing.JTable(); 

     setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 

     jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createMatteBorder(1, 1, 1, 1, new java.awt.Color(0, 0, 255)), "Commands")); 

     CmdA.setText("+"); 

     CmdE.setText("E"); 

     CmdD.setText("-"); 

     cmdQ.setText("Q"); 

     javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); 
     jPanel2.setLayout(jPanel2Layout); 
     jPanel2Layout.setHorizontalGroup(
      jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(jPanel2Layout.createSequentialGroup() 
       .addContainerGap() 
       .addComponent(CmdA, javax.swing.GroupLayout.PREFERRED_SIZE, 64, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) 
       .addComponent(CmdE, javax.swing.GroupLayout.PREFERRED_SIZE, 71, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) 
       .addComponent(CmdD, javax.swing.GroupLayout.DEFAULT_SIZE, 72, Short.MAX_VALUE) 
       .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) 
       .addComponent(cmdQ, javax.swing.GroupLayout.PREFERRED_SIZE, 72, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addContainerGap()) 
     ); 
     jPanel2Layout.setVerticalGroup(
      jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(jPanel2Layout.createSequentialGroup() 
       .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) 
        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel2Layout.createSequentialGroup() 
         .addGap(20, 20, 20) 
         .addComponent(CmdA, javax.swing.GroupLayout.PREFERRED_SIZE, 59, javax.swing.GroupLayout.PREFERRED_SIZE)) 
        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel2Layout.createSequentialGroup() 
         .addGap(22, 22, 22) 
         .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
          .addComponent(CmdD, javax.swing.GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE) 
          .addComponent(CmdE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
          .addComponent(cmdQ, javax.swing.GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE)))) 
       .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) 
     ); 

     jPanel3.setBorder(javax.swing.BorderFactory.createMatteBorder(1, 1, 1, 1, new java.awt.Color(0, 0, 255))); 

     jTable1.setModel(new javax.swing.table.DefaultTableModel(
      new Object [][] { 

      }, 
      new String [] { 
       "StudName", "StudClass", "StudMrk1", "StudMrk2", "StudTot", "StudRes", "StudNO", "StudId" 
      } 
     ) { 
      Class[] types = new Class [] { 
       java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class, java.lang.Integer.class 
      }; 

      public Class getColumnClass(int columnIndex) { 
       return types [columnIndex]; 
      } 
     }); 
     jScrollPane1.setViewportView(jTable1); 
     jTable1.getColumnModel().getColumn(0).setResizable(false); 
     jTable1.getColumnModel().getColumn(0).setPreferredWidth(150); 
     jTable1.getColumnModel().getColumn(1).setResizable(false); 
     jTable1.getColumnModel().getColumn(1).setPreferredWidth(70); 
     jTable1.getColumnModel().getColumn(2).setResizable(false); 
     jTable1.getColumnModel().getColumn(2).setPreferredWidth(70); 
     jTable1.getColumnModel().getColumn(3).setResizable(false); 
     jTable1.getColumnModel().getColumn(3).setPreferredWidth(70); 
     jTable1.getColumnModel().getColumn(4).setResizable(false); 
     jTable1.getColumnModel().getColumn(4).setPreferredWidth(70); 
     jTable1.getColumnModel().getColumn(5).setResizable(false); 
     jTable1.getColumnModel().getColumn(5).setPreferredWidth(70); 
     jTable1.getColumnModel().getColumn(6).setMinWidth(0); 
     jTable1.getColumnModel().getColumn(6).setPreferredWidth(0); 
     jTable1.getColumnModel().getColumn(6).setMaxWidth(0); 
     jTable1.getColumnModel().getColumn(7).setMinWidth(0); 
     jTable1.getColumnModel().getColumn(7).setPreferredWidth(0); 
     jTable1.getColumnModel().getColumn(7).setMaxWidth(0); 

     javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); 
     jPanel3.setLayout(jPanel3Layout); 
     jPanel3Layout.setHorizontalGroup(
      jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 984, Short.MAX_VALUE) 
      .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(jPanel3Layout.createSequentialGroup() 
        .addContainerGap() 
        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 964, Short.MAX_VALUE) 
        .addContainerGap())) 
     ); 
     jPanel3Layout.setVerticalGroup(
      jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 249, Short.MAX_VALUE) 
      .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(jPanel3Layout.createSequentialGroup() 
        .addContainerGap() 
        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 184, javax.swing.GroupLayout.PREFERRED_SIZE) 
        .addContainerGap(54, Short.MAX_VALUE))) 
     ); 

     javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); 
     jPanel1.setLayout(jPanel1Layout); 
     jPanel1Layout.setHorizontalGroup(
      jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() 
       .addContainerGap(657, Short.MAX_VALUE) 
       .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addContainerGap()) 
      .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(jPanel1Layout.createSequentialGroup() 
        .addContainerGap() 
        .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
        .addContainerGap())) 
     ); 
     jPanel1Layout.setVerticalGroup(
      jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGroup(jPanel1Layout.createSequentialGroup() 
       .addGap(19, 19, 19) 
       .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addContainerGap(803, Short.MAX_VALUE)) 
      .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(jPanel1Layout.createSequentialGroup() 
        .addGap(190, 190, 190) 
        .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
        .addContainerGap(492, Short.MAX_VALUE))) 
     ); 

     javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); 
     getContentPane().setLayout(layout); 
     layout.setHorizontalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 1016, Short.MAX_VALUE) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(layout.createSequentialGroup() 
        .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) 
     ); 
     layout.setVerticalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 946, Short.MAX_VALUE) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addGroup(layout.createSequentialGroup() 
        .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
        .addContainerGap(13, Short.MAX_VALUE))) 
     ); 

     pack(); 
     java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); 
     java.awt.Dimension dialogSize = getSize(); 
     setLocation((screenSize.width-dialogSize.width)/2,(screenSize.height-dialogSize.height)/2); 
    }// </editor-fold>       

    public static void main(String args[]) { 
     java.awt.EventQueue.invokeLater(new Runnable() { 
      public void run() { 
        FrmeA f= new FrmeA(); 
       f.initcon(); 
       f.setVisible(true); 

      } 
     }); 
    } 

    // Variables declaration - do not modify      
    private javax.swing.JButton CmdA; 
    private javax.swing.JButton CmdD; 
    private javax.swing.JButton CmdE; 
    private javax.swing.JButton cmdQ; 
    private javax.swing.JPanel jPanel1; 
    private javax.swing.JPanel jPanel2; 
    private javax.swing.JPanel jPanel3; 
    private javax.swing.JScrollPane jScrollPane1; 
    private javax.swing.JTable jTable1; 
    // End of variables declaration     

} 
+0

[MySQLデータを使用してJTableの任意の出力を表示できません]の可能な重複(http://stackoverflow.com/questions/8645123/unable-to-show-any-output-in-a-jtable -using-mysql-data) – trashgod

答えて

1

ので、どの列のパラメータを取りますジェネリックメソッドを作成し、あなたのクエリがString select = "Select StudName from studentmaster"の代わりString select = "Select * from studentmaster"である必要があり、すべての生徒の名前を取得したいなど希望の正確なデータを取得するために、あなたのクエリを変更するために、あなたのカスタマイズ方法を書きますクエリによって取得されます

1

まあ、これはあなたが意味するものかどうかわかりません?

String select = "Select StudName from studentmaster"; 
TmpFlxTRs = TmpFlxTSt.executeQuery(select); 

    while (TmpFlxTRs.next()){     
     // TmpFlxTRs.getString(1) will have the corresponding name, add it to the table. 
    } 
関連する問題