Porque não consigo preencher minha JTable com 158.783 linhas segundo o código abaixo:
protected static JTable PreencheJTable(final JTable jT, final ResultSet rs) {
try {
Vector colunas = new Vector(); //Cabeçalho das colunas
Vector linhas = new Vector(); //Registros da tabela
while (rs.next()) {
if (rs.isFirst()) {
for (int intContadorColunas = 1; intContadorColunas <= rs.getMetaData().getColumnCount(); intContadorColunas++) {
Vector parametrosColunas = new Vector();
parametrosColunas.addElement(rs.getMetaData().getCatalogName(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnClassName(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnCount());
parametrosColunas.addElement(rs.getMetaData().getColumnDisplaySize(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnLabel(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnName(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnType(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getColumnTypeName(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getPrecision(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getScale(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getSchemaName(intContadorColunas));
parametrosColunas.addElement(rs.getMetaData().getTableName(intContadorColunas));
// System.out.println("getCatalogName - " + rs.getMetaData().getCatalogName(intContadorColunas));
// System.out.println("getColumnClassName - " + rs.getMetaData().getColumnClassName(intContadorColunas));
// System.out.println("getColumnCount - " + rs.getMetaData().getColumnCount());
// System.out.println("getColumnDisplaySize - " + rs.getMetaData().getColumnDisplaySize(intContadorColunas));
// System.out.println("getColumnLabel - " + rs.getMetaData().getColumnLabel(intContadorColunas));
// System.out.println("getColumnName - " + rs.getMetaData().getColumnName(intContadorColunas));
// System.out.println("getColumnType - " + rs.getMetaData().getColumnType(intContadorColunas));
// System.out.println("getColumnTypeName - " + rs.getMetaData().getColumnTypeName(intContadorColunas));
// System.out.println("getPrecision - " + rs.getMetaData().getPrecision(intContadorColunas));
// System.out.println("getScale - " + rs.getMetaData().getScale(intContadorColunas));
// System.out.println("getSchemaName - " + rs.getMetaData().getSchemaName(intContadorColunas));
// System.out.println("getTableName - " + rs.getMetaData().getTableName(intContadorColunas));
// System.out.println(" ========================================= ");
colunas.addElement(parametrosColunas);
}
}
Vector valoresColunas = new Vector();
for (int intContadorLinhas = 1; intContadorLinhas <= rs.getMetaData().getColumnCount(); intContadorLinhas++) {
valoresColunas.addElement(FormataDado(rs.getObject(rs.getMetaData().getColumnName(intContadorLinhas))));
// System.out.println(rs.getObject(rs.getMetaData().getColumnName(intContadorLinhas)));
}
linhas.addElement(valoresColunas);
}
//Configura Tabela
jT.setModel(new ModeloTabelaPadrao(linhas, colunas));
//jT.setModel(new DefaultTableModel(linhas, colunas));
jT.setColumnModel(new ModeloColunaTabelaPadrao(colunas));
//Configura Tabela (Segundo bloco)
jT.getTableHeader().setReorderingAllowed(false);
jT.getTableHeader().setResizingAllowed(false);
jT.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
////////// //Configura tabela
////////// jT.setCellSelectionEnabled(false);
////////// jT.setColumnSelectionAllowed(false);
////////// jT.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
////////// jT.setAutoCreateColumnsFromModel(false);
////////// jT.setSelectionModel(new DefaultListSelectionModel());
//////////
////////// //Define o modelo da tabela
////////// jT.setModel(new ModeloTabelaPadrao(linhas, colunas));
//////////
////////// //Define o modelo das colunas da tabela
////////// jT.setColumnModel(new ModeloColunaTabelaPadrao(colunas));
//////////
////////// //
////////// //jT.getTableHeader().setDefaultRenderer(CelulaCabecalhoTabela(jT.getTableHeader()));
//////////
////////// //Define objeto da célula
////////// jT.setDefaultRenderer(Object.class, new CelulaTabela());
} catch (SQLException errorSQL) {
JOptionPane.showMessageDialog(null, errorSQL.getMessage(), "Erro SQL", JOptionPane.ERROR_MESSAGE);
errorSQL.printStackTrace();
}
return jT;
}
A Propósito: Alguém tem um exemplo de JTable para BI?
Algo onde o usuário possa brincar com os dados nela apresentados.
DESDE JÁ MUITO OBRIGADO.