JTable не будет отображать данные

Поэтому я недавно пытался вставить данные в Jtable из базы данных. Программа запускает Jframe "Quote", который содержит JTable, называемый "tblQuote". на экране "Цитата" есть кнопка "Добавить товар", которая открывает фрейм, позволяющий пользователю выбрать товар из базы данных. Я добавил в цитату класса метод для обновления таблицы, которая получает значения в качестве параметра из класса add product. Класс add product получает значения из моего рабочего класса, который подключается к базе данных и обрабатывает все запросы.

Пожалуйста, обратите внимание, что все значения были успешно доставлены из базы данных, и что метод обновления таблицы был проверен на System.out.println, который я использовал для проверки того, работает ли она и были ли значения правильными.

но все равно не будет отображаться в таблице.

Код подключения к базе данных:

    public String updateTableQ(String name) {
    String results = "";
    try {
        String qry = "SELECT * FROM tblProducts WHERE Name =?";
        PreparedStatement pst = conn.prepareStatement(qry);
        pst.setString(1, name);
        ResultSet rs = pst.executeQuery();
        while (rs.next()) {
            results += rs.getString("Excl Price") + "/"
                    + rs.getString("Incl Price") + "/";
        }

    } catch (Exception e) {
        e.printStackTrace();
        System.out.println(e.getMessage());
    }
    return results;
}

}

обновить код таблицы:

    public void updateTable(String name, double ex, int qty, double vat, double disc, double total) {
    Object[] row = {name, ex, qty, vat, disc, total};
    DefaultTableModel model = (DefaultTableModel) tblQuote.getModel();
    model.addRow(row);
    System.out.println(name + " " + ex + " " + qty + " " + vat + " " + disc + " " + total);
}

}

Вызов методов в классе add:

    String name = cmbProduct.getSelectedItem().toString();
    String str =db.updateTableQ(name);
    String[] arr = str.split("/");
    double excl = Double.parseDouble(arr[0]);
    double total = Double.parseDouble(arr[1]);
    double vat = 15;
    double disc = Double.parseDouble(txtInDiscount.getText());
    int qty = Integer.parseInt(txtInQty.getText());
    q.updateTable(name, excl, qty, vat, disc, total);
    this.dispose();

0 ответов

Другие вопросы по тегам