Java - извлечение данных из базы данных и отображение с помощью JcomboBox - PullRequest
0 голосов
/ 17 февраля 2012

Я хотел бы иметь возможность выбрать данные из базы данных и отобразить их с помощью comboBox.

У меня есть следующий код, но он не отображает данные в поле со списком.Я понимаю, что для отображения данных отсутствуют коды, и мой оператор SQL неверен.Я просто не уверен, что я могу сделать любой совет ценится.

try {Statement st = db.con.createStatement ();ResultSet rs = st.executeQuery ("ВЫБЕРИТЕ имя, размер, цену ИЗ элемента ГДЕ имя =" + comboBox_1.getToolkit ());

                JOptionPane.showMessageDialog(frame, "displayed");

                while (rs.next()) {
                    String name  = rs.getString("Name");
                    String size  = rs.getString("size");
                    String price  = rs.getString("price");
                    textArea_Name.append(name);
                    textArea_size.append(size);
                    textArea_price.append(price);
                    comboBox_1.addItem(rs.getString("Name"));
                    comboBox_1.getSelectedItem();

                }}              


                 catch (SQLException e ) {
                    System.out.println("user not added");
                    e.printStackTrace();
                 }              

            }
        });

Ответы [ 5 ]

2 голосов
/ 15 апреля 2014
try {  
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  

Connection conn= DriverManager.getConnection("jdbc:odbc:driverName");  
Statement st = conn.createStatement();

 ResultSet r=st.executeQuery("select * from tableName");

 while (r.next()) {  

     JComboBox.addItem(r.getString("Key_Coloumn_Name"));  
 }


    conn.close();
    } catch (Exception e) {  
JOptionPane.showMessageDialog(null,"Failed to Connect to Database","Error Connection", JOptionPane.WARNING_MESSAGE);  
System.exit(0);  
}  
1 голос
/ 26 марта 2015
        try {
             Statement stmt = db.con.createStatement();
        ResultSet rs = stmt5.executeQuery("select * from tbl_your_table");
        while (rs.next()) {
            String pat = rs.getString("name");
            jComboBox.addItem(pat);
        }

    } catch (Exception e) {

        JOptionPane.showMessageDialog(null, e);
    }
1 голос
/ 17 февраля 2012

Попробуйте этот урок.Это именно так.

http://www.roseindia.net/tutorial/java/swing/comboboxwithdatabaseValues.html

0 голосов
/ 04 декабря 2018
comb = new JComboBox();
  DefaultComboBoxModel dftm = (DefaultComboBoxModel) comb.getModel();
    ArrayList<stock_data> list = userLists();
     row = new Object[1];
    for (int i = 0; i < list.size(); i++) {
        row[0] = list.get(i).get_item();
        dftm.addElement(row);
        // comb.setModel(dftm);
    }

Затем создайте свой метод и помните, что вам нужен класс stock_data

private ArrayList<stock_data> userLists() {
    try {

        connection = localhost.dbConnector();
        ArrayList<stock_data> usersList = new ArrayList();
        try {
            String query = "Select * from itemlist";
            Statement st = connection.createStatement();
            ResultSet rs = st.executeQuery(query);
            stock_data users;
            while (rs.next()) {
                // users = new stock_data(rs.getString("name"));
                // usersList.add(users);
                comb.addItem(rs.getString("name"));

            }
            rs.close();
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, "blah blah");
            e.printStackTrace();
        }
        return usersList;
    } catch (Exception e1) {
        e1.printStackTrace();
    }
    return null;
}
0 голосов
/ 20 марта 2013
    con = DriverManager.getConnection("jdbc:mysql://:3306/database","user","password");
    stat = con.createStatement();
    ResultSet rs = stat.executeQuery("select name from student;");
    while(rs.next()){
        jComboBox1.addItem(rs.getString("name"));
        }
    rs.close();
    stat.close();
    con.close();
...