Como criar tabela dinamica no JTable

3 respostas
A

Bom gente eu li bastante artigos daqui do fórum como:

http://www.guj.com.br/posts/list/100793.java
http://www.guj.com.br/posts/list/149034.java#808003
http://www.javasimples.com.br/mundo-java/death-to-defaulttablemodel-abstracttablemodel-rulez/

E vi sobre as vantagens de vc fazer sua propria JTableModel… mas o que eu não vi em java, é fazer uma tabela totalmente dinamica. Eu programo também em C# e lá dava para vc jogar um DataTable direto no DataGridView, ele jah gerava as colunas de acordo com o seu DataTable… era uma beleza. Mas como eu vi aqui no java, o JTableModel que é recomendado a fazer tem as colunas já bem definidas. Tem uma maneira de tornar isso dinamico? faço uma consulta qualquer SQL e não sei quantas colunas que ela me retorna, e quero montar uma tabela com isso. Só modificando talvez os nomes das colunas de visualização.
Espero que tenho me expressado adequadamente.

3 Respostas

V

Dê uma olhada no ObjectTableModel do Mark, e no projeto GlazedLists.

Agora, nem no C# é recomendado fazer tabela com binding direto do banco, mesmo usando LINQ.
Essa prática era moda na época do Delphi, mas despreza uma boa modelagem OO.

A

Sim eu dei uma olhada, mas ainda não foi tãão claro o seu uso pra mim. Minha dúvida principal é que eu vi os exemplos utilizando objetos… por exemplo… visualizar uma JTable de objetos Cliente. Mas queria saber se eu fosse fazer uma consulta no banco de dados, que não necessariamente fosse de objeto Cliente, que o resultado seria partes de dados de diversos objetos, como eu iria jogar isso pra minha JTableModel extendida da AbstractTableModel… isso não ficou claro pra mim

Obrigado pela atenção

A

Pesquisando sobre isso, achei este artigo que era o que eu estava dizendo…

http://javafree.uol.com.br/artigo/871840/Apresentar-Resultado-de-Consulta-SQL-em-JTable.html

isso está errado, certo? qual outra maneira que eu poderia estar fazendo coisas do tipo?

também daria pra adaptar este código para passar somente as colunas e linhas por meio de listas para essa classe, assim sendo genérica para qualquer coisa… onde não preicso ter objetos. É que no meu sistema tenho várias consultas que nem sempre tem os mesmo atributos que os objetos. Consultas diversificadas mesmo.

Você acha isso possivel? correto? ou tem outra sugestao?

Criado 20 de novembro de 2010
Ultima resposta 21 de nov. de 2010
Respostas 3
Participantes 2