Как получить данные из MySQL в JList? - PullRequest
2 голосов
/ 23 февраля 2012

Я новичок в Java.как я могу получить данные из MySQL и отобразить их в Jlist (имя Jlist: JLISTF) Я запутался с вектором и моделью.

Ниже приведена фотография моего JFRAME

желтогочасть означает JLIST и его имя JLISTF. Я хочу отобразить данные из mysql

Спасибо enter image description here

код:

public class Inventory extends javax.swing.JFrame {


        Connection connect = null;
        ResultSet rs = null;
        PreparedStatement pst = null;
        ResultSet rs2 = null;


    public void populateJList(JList ItemList, String query, Connection connection) throws SQLException
{
    DefaultListModel model = new DefaultListModel(); //create a new list model

    Statement statement = connection.createStatement();
    ResultSet resultSet = statement.executeQuery(query); //run your query

    while (resultSet.next()) //go through each row that your query returns
    {
        String ItemList2 = resultSet.getString("ItemCode"); //get the element in column "item_code"
        model.addElement(ItemList2); //add each item to the model
    }
    ItemList.setModel(model);

    resultSet.close();
    statement.close();

}


public Inventory() {..}

  private void searchButtonActionPerformed(java.awt.event.ActionEvent evt) { ......}

private void saveButton3ActionPerformed(java.awt.event.ActionEvent evt) {
String inventcodef = inventCodeField.getText();
try{.........}
catch()
{...........}
}

1 Ответ

4 голосов
/ 24 февраля 2012

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

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.swing.DefaultListModel;
import javax.swing.JList;

...

public void populateJList(JList list, String query, Connection connection) throws SQLException
{
    DefaultListModel model = new DefaultListModel(); //create a new list model

    Statement statement = connection.createStatement();
    ResultSet resultSet = statement.executeQuery(query); //run your query

    while (resultSet.next()) //go through each row that your query returns
    {
        String itemCode = resultSet.getString("item_code"); //get the element in column "item_code"
        model.addElement(itemCode); //add each item to the model
    }
    list.setModel(model);

    resultSet.close();
    statement.close();

}

Вы передадите переменную JLISTF в эту функциюв качестве первого параметра.

В следующей строке предполагается, что имя вашего столбца - "item_code", вам нужно заменить его на фактическое имя столбца.

String itemCode = resultSet.getString("item_code");

Эта функция создает новыйМодель (см. Как использовать модели ), затем выполняет ваш запрос.Он получает каждое значение, которое возвращает ваш запрос, и добавляет его в новую модель.Затем list.setModel (model) сообщает списку, чтобы начать использовать вашу новую модель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...