Как выбрать имя элемента из jList в netbeans? - PullRequest
0 голосов
/ 02 января 2019

Я пытался получить данные из mysql в list, и это работает нормально, но проблема в том, что я не могу выбрать name из list .. Я хочу выбрать name (не индекс или значение), чтобы я мог завершить мое предложение where

Вот мой код: -

private void proceed(){

    PreparedStatement stmt = null;
    Connection conn = null;
    ResultSet rs=null;

    String i = jList1.getSelectedValue();




    try    {

     Class.forName("java.sql.DriverManager");

     conn = DriverManager.getConnection ("jdbc:mysql://localhost:3306/hotel","root","root");

      stmt = conn.prepareStatement("select * from hotelbookings where GuestName = '"+i+"'");

    rs = stmt.executeQuery();

    if (rs.next()){

    String BN = rs.getString("BookNo");
    String GN = rs.getString("GuestName");
    String AD = rs.getString("Address");
    String NOD = rs.getString("No_of_Days");
    String PN = rs.getString("PhoneNo");
    String ID = rs.getString("ID_Proof");
    String CN = rs.getString("Country");
    String ARD = rs.getString("Arival_Date");
    String DRD = rs.getString("Departure_Date");

    NewJFrame1_1 second = new NewJFrame1_1(BN,GN,AD,NOD,PN,ID,CN,ARD,DRD);
    second.setVisible(true);

    }

} catch(Exception e){
 JOptionPane.showMessageDialog(null, e);
}


}

Вот изображение моего списка .. Список шоуизвлекает данные из mysql .. и кнопка продолжить используется для получения выбранного имени для модификации

Вот код для кнопки Показать список: -

private void fillList(){

        PreparedStatement stmt = null;
        Connection conn = null;


         try    {
         Class.forName("java.sql.DriverManager");

         conn = DriverManager.getConnection ("jdbc:mysql://localhost:3306/hotel","root","root");

          stmt = conn.prepareStatement("select GuestName from hotelbookings");

         stmt.executeQuery();

             ResultSet rs = stmt.getResultSet();
             int i =0;
             DefaultListModel info = new DefaultListModel();

             while (rs.next()){
                 String[] data = new String[100];
                 data[i] = rs.getString("GuestName");
                 jList1.setModel(info);
                 info.addElement(data[i]);
                 i = i + 1;
                 jList1 = new JList(info);
             }

}
      catch(Exception e){

                JOptionPane.showMessageDialog (this, e.getMessage());
}




    }

класс fillList:-

частная пустота jButton2ActionPerformed (java.awt.event.ActionEvent evt) {

     fillList();

} ​​

1 Ответ

0 голосов
/ 02 января 2019
private void fillList(){

PreparedStatement stmt = null;
Connection conn = null;

try    {
    Class.forName("java.sql.DriverManager");
    conn = DriverManager.getConnection ("jdbc:mysql://localhost:3306/hotel","root","root");
    stmt = conn.prepareStatement("select GuestName from hotelbookings");
    stmt.executeQuery();
    ResultSet rs = stmt.getResultSet();
    int i =0;
    DefaultListModel info = new DefaultListModel();

    while (rs.next()){
        String[] data = new String[100];
        data[i] = rs.getString("GuestName");
        info.addElement(data[i]);
        i = i + 1;
    }
    jList1 = new JList(info);
} catch(Exception e){
    JOptionPane.showMessageDialog (this, e.getMessage());
}

}
...