Я пытался получить данные из 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();
}