valeu pela resposta cara!!
Eu ja extendi a classe AbstractTableModel.
eu quero q ao fazer uma pesquisa a JTable mostre somente o resultado da pesquisa,
naum existe um metodo:fireTable… para fazer isso, eu naum preciso de um codigo pronto,
soh quero uma ideia de como fazer isso.
Abaixo esta o modelo da minha tabela.
public class modeloTabela extends AbstractTableModel {
List <Cliente> dataCliente = new ArrayList<Cliente>();
List <Produto> dataProduto = new ArrayList<Produto>();
List <Modelo> dataModelo = new ArrayList<Modelo>();
List <Marca> dataMarca = new ArrayList<Marca>();
List <Cor> dataCor = new ArrayList<Cor>();
final String [] colunas = {"Código","Data Mov",
"Data Compra","Cliente/Fornecedor",
"Placa","Modelo","Marca"};
public int getRowCount() {
return dataCliente.size();
}
public int getColumnCount() {
return colunas.length;
}
public String getColumnName(int col){
return colunas[col];
}
public boolean isCellEditable(int row,int col){
return false;
}
public Object getValueAt(int rowIndex, int columnIndex) {
Cliente cliente =(Cliente)dataCliente.get(rowIndex);
Produto produto =(Produto)dataProduto.get(rowIndex);
Modelo modelo =(Modelo)dataModelo.get(rowIndex);
Marca marca =(Marca)dataMarca.get(rowIndex);
if(cliente==null || produto==null){
return null;
}
switch(columnIndex){
case 0 : return produto.getIdproduto();
case 1 : return produto.getDatamov();
case 2 : return produto.getDatacompra();
case 3 : return cliente.getNome();
case 4 : return produto.getPlaca();
case 5 : return modelo.getModelo();
case 6 : return marca.getMarca();
}
return null;
}
public void Consulta() throws Exception{
String sql ="Select cliente.idcliente,cliente.nome,cliente.tipo,";
sql +="produto.idproduto,produto.lote,produto.anofab,produto.anomod,";
sql +="date_format(datacompra,'%d/%m/%Y') as datacompra,";
sql +="date_format(datamov,'%d/%m/%Y') as datamov,";
sql +="produto.chassis,produto.renavan,produto.placa,";
sql +="produto.nmotor,produto.ncambio,produto.ndiferencial,";
sql +="produto.baixado,produto.preco,produto.observ,";
sql +="produto.fmarca,produto.fmodelo,produto.fcor,";
sql += "marca.*,modelo.*,cor.* ";
sql +="FROM cliente,produto,marca,modelo,cor ";
sql +="WHERE cliente.idcliente=produto.idcliente";
sql +=" and produto.Fmarca=marca.idmarca";
sql +=" and produto.Fmodelo=modelo.idmodelo";
sql +=" and produto.Fcor=cor.idcor";
Consulta consulta = new Consulta();
ResultSet result = (ResultSet) consulta.getResultado(sql);
while(result.next()){
Cliente cliente = new Cliente();
cliente.setId(result.getInt("idcliente"));
cliente.setNome(result.getString("nome"));
cliente.setTipo(result.getString("tipo"));
dataCliente.add(cliente);
Produto produto = new Produto();
produto.setIdproduto(result.getInt("idproduto"));
produto.setLote(result.getString("lote"));
produto.setMarca(result.getInt("Fmarca"));
produto.setModelo(result.getInt("Fmodelo"));
produto.setAnofab(result.getString("anofab"));
produto.setAnomod(result.getString("anomod"));
produto.setDatamov(result.getString("datamov"));
produto.setDatacompra(result.getString("datacompra"));
produto.setChassis(result.getString("chassis"));
produto.setRenavan(result.getString("renavan"));
produto.setCor(result.getInt("Fcor"));
produto.setNcambio(result.getString("Ncambio"));
produto.setNdiferencial(result.getString("Ndiferencial"));
produto.setNmotor(result.getString("Nmotor"));
produto.setPlaca(result.getString("placa"));
produto.setPreco(result.getFloat("preco"));
produto.setBaixado(result.getInt("baixado"));
produto.setObservacao(result.getString("Observ"));
dataProduto.add(produto);
Modelo modelo = new Modelo();
modelo.setIdmodelo(result.getInt("idmodelo"));
modelo.setModelo(result.getString("modelo"));
dataModelo.add(modelo);
Marca marca = new Marca();
marca.setIdMarca(result.getInt("idmarca"));
marca.setMarca(result.getString("marca"));
dataMarca.add(marca);
Cor cor = new Cor();
cor.setIdcor(result.getInt("idcor"));
cor.setCor(result.getString("cor"));
dataCor.add(cor);
}
consulta.FecharConn();
}
public Cliente getCliente(int row){
return (Cliente) dataCliente.get(row);
}
public Cor getCor(int row){
return (Cor) dataCor.get(row);
}
public Marca getMarca(int row){
return (Marca) dataMarca.get(row);
}
public Modelo getModelo(int row){
return (Modelo) dataModelo.get(row);
}
public Produto getProduto(int row){
return (Produto) dataProduto.get(row);
}
public void clear(){
this.dataCliente.clear();
this.dataCor.clear();
this.dataMarca.clear();
this.dataModelo.clear();
this.dataProduto.clear();
fireTableDataChanged();
}
}