Maison >Java >javaDidacticiel >Comment remplir une JTable à partir d'un ResultSet en Java ?
Remplir une JTable à partir de ResultSet
Comme décrit dans la documentation Java, le constructeur JTable accepte un TableModel comme argument. Cela signifie que vous pouvez utiliser la classe DefaultTableModel pour créer un modèle de table basé sur un ResultSet.
Voici un exemple de la façon de procéder :
ResultSet rs = stmt.executeQuery("select * from product_info"); JTable table = new JTable(new DefaultTableModel(buildTableModel(rs), columnNames));
La méthode buildTableModel prend un ResultSet comme un argument et renvoie un objet TableModel. Voici un exemple de la façon de mettre en œuvre cette méthode :
public static DefaultTableModel buildTableModel(ResultSet rs) throws SQLException { ResultSetMetaData metaData = rs.getMetaData(); // names of columns Vector<String> columnNames = new Vector<String>(); int columnCount = metaData.getColumnCount(); for (int column = 1; column <= columnCount; column++) { columnNames.add(metaData.getColumnName(column)); } // data of the table Vector<Vector<Object>> data = new Vector<Vector<Object>>(); while (rs.next()) { Vector<Object> vector = new Vector<Object>(); for (int columnIndex = 1; columnIndex <= columnCount; columnIndex++) { vector.add(rs.getObject(columnIndex)); } data.add(vector); } return new DefaultTableModel(data, columnNames); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!