Boa tarde,
Tenho uma tela de cadastros onde dependo de dados de outra tabela para incluir um registro, gostaria de ter uma instrução/exemplo, de como atribuir á um JtextField uma busca de registro automática, de forma que retorne o valor seleciona para o mesmo.
Eu quero que o JtextField faça uma busca independente da tabela…
Exemplo esse Jtext… é para inserir o Nome do cliente, para o cadastro de uma mercadoria, mas a tabela cliente é separada da tabela mercadoria, então o JtextField tem de me retornar uma busca no banco de dados, Setando nele mesmo o nome selecionado, Startando essa busca conforme digito os caracteres…
Isso, mas no exemplo que vi com esse contexto “Tipo google” a pessoa pesquisa no Jtext e joga para outro Jtext o resultado, eu quero implementar buscando e já setando no mesmo Jtext… pelo menos pretendo estudar até conseguir dessa maneira.
Connection con = Conexao.getConnection();
PreparedStatement stmt = null;
ResultSet rs = null;
List<Cliente> clientes = new ArrayList<>();
try {
stmt = con.prepareStatement("SELECT * FROM cliente WHERE nome LIKE ?");
stmt.setString(1, "%"+nome+"%");
rs = stmt.executeQuery();
while (rs.next()) {
Cliente c = new Cliente();
c.setId(rs.getInt("id"));
c.setNome(rs.getString("nome"));
c.setSobreNome(rs.getString("sobrenome"));
c.setCpf(rs.getString("cpf"));
clientes.add(c);
}
} catch (SQLException ex) {
Logger.getLogger(ClienteDAO.class.getName()).log(Level.SEVERE, null, ex);
} finally {
Conexao.closeConnection(con, stmt, rs);
}
return clientes;
}
Fiz um botão que pegar o valor do JTextField e envia o parâmetro pra um outro método que chama mais um método que pesquisa (DAO acima) e seta os valores em uma tabela
readJTablePesquisar(txtPesquisar.getText());
Método que chama outro método que faz pesquisa e joga na tabela
public void readJTablePesquisar(String nome) {
DefaultTableModel modelo = (DefaultTableModel) jTableClientes.getModel();
modelo.setNumRows(0);
ClienteDAO pdao = new ClienteDAO();
for (Cliente c : pdao.Pesquisar(nome)) {
modelo.addRow(new Object[]{
c.getId(),
c.getNome(),
c.getSobreNome(),
c.getCpf()
});
}
}
Pessoal, achei um método de trabalho com Combobox, que faz oque preciso, ele usa uma pacote novo que permite Autobusca, e a implementação é mais eficaz com um menor numero de linhas, sem a necessidade de introduzir tanta consulta no Jframe, por conta de uma única função!!!