bisht12345 Ответов: 0

Как вставить комбинированного как единый блок данных MySQL


Я создал программное приложение java, в котором есть форма и которое содержит несколько JTextField и один JList. Элементы в JList также вставляются пользователем с помощью поля JTextField, присутствующего на той же странице. Я хочу сохранить JTextField и JList в базе данных MySQL при нажатии кнопки submit. Я успешно вставил данные JTextField в таблицу базы данных MySQL, но проблема в том, что я не знаю, как сохранить JList в одном блоке . Просто чтобы попрактиковаться, я попытался сохранить JList и взять новую строку для каждого элемента в базе данных.

Есть ли какой-нибудь способ добавить весь JList в один блок?

ОПЕРАЦИОННАЯ

Если нет, то как я могу связать JList с оставшимися данными в MySQL.

Я знаю, что мы можем задать только один вопрос за раз, но другая проблема заключается в том, как получить JList из базы данных в JTable в виде JList внутри JTable со всеми другими деталями.

Что я уже пробовал:

    DefaultListModel dlm= new DefaultListModel();
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         

        String userInput= jTextField1.getText();
        dlm.addElement(userInput);
        jList1.setModel(dlm);
        jTextField1.setText(null);  

    }                                        

String item="";
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         

       for(int i = 0; i < jList1.getModel().getSize(); i++)
       {         item = (String)jList1.getModel().getElementAt(i);
        try{

                    Class.forName("com.mysql.jdbc.Driver");
                    Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/a","root","");
                    PreparedStatement stmt = conn.prepareStatement("insert into listt (listitem) values (?)");
                    stmt.setString(1,item);
                    stmt.execute();
                    conn.close();
        }
catch(Exception e){
                    JOptionPane.showMessageDialog(null, e);
                    e.printStackTrace();
                }       
       } 
       JOptionPane.showMessageDialog(null, "Done");
    }  

В приведенном выше коде есть две кнопки btn1 добавляет данные JTextField в JList, а btn2 добавляет элемент JList в базу данных. Он сохраняет каждый элемент в новой строке в базе данных, но я хочу сохранить его в одной строке в одном блоке с другими данными.

Richard MacCutchan

Это правильный способ сделать это. Чтобы прочитать его обратно, вы просто обращаете процесс вспять, читаете каждый элемент из списка. listt таблица и добавьте ее в новый JList.

0 Ответов