xxwpxx 0 Denunciar post Postado Outubro 1, 2014 Galera fiz de tudo, mas não consigo instanciar o método consultar, queria que ele fizesse a seguinte função de acordo com a imagem a baixo.Digito o ID do Produto que está no banco de dados e insere nos JTextFieldClasse Mercadoria: public void consulta(){ try{ String sql = "select * from produtos where id = ?"; st = conn.prepareStatement(sql); st.setInt(1,getId()); ResultSet resultSet = st.executeQuery(); while(resultSet.next()){ // so espero um resultado por isso uso o IF para verificar setNome(resultSet.getString("nome")); // coloca-se os dados setDescricao(resultSet.getString("descricao")); setPreco(resultSet.getDouble("preco")); setQuantidade(resultSet.getInt("quantidade")); } st.close(); // fecha consulta } catch(Exception e){ //e.printStackTrace(); System.out.println("Não foi possivel consultar!"); } } Classe TelaPrincipal: public void consultarDados() { mercadoria = new Mercadoria(); mercadoria.setId(Integer.parseInt(JOptionPane.showInputDialog("Digite o ID para consulta: "))); mercadoria.consulta(); } JTextField: tId tNome tDescricao tPreco tQuantidade Compartilhar este post Link para o post Compartilhar em outros sites
jorge danilo 3 Denunciar post Postado Outubro 8, 2014 Ola boa tarde, bom voce deverá pegar os dados que vem de seu método de consulta por exemplo: getId() getNome() getDescricao() ... e inserir nos respectivos campos.. tIdtNometDescricaotPrecotQuantidade Compartilhar este post Link para o post Compartilhar em outros sites
reebr 94 Denunciar post Postado Outubro 10, 2014 Em qual parte do método de consulta você está usando a informação que veio do BD? Você pode inserir os dados diretamente na tela como sugerido pelo @jorge danilo dentro do método de consulta. Ou se preferir, pode também realizar a consulta e retornar um objeto da classe Mercadoria (caso exista). Por exemplo: // classe MercadoriaDAO public Mercadoria consulta(int id){ Mercadoria mercadoria = null; try { PreparedStatement pstm = con.prepareStatement("select * from produtos where id = ?"); pstm.setInt(1, id); ResultSet result = pstm.executeQuery(); while(result.next()){ mercadoria = new Mercadoria(); mercadoria.setId(result.getInt("id")); mercadoria.setNome(result.getString("nome")); mercadoria.setDescricao(result.getString("descricao")); mercadoria.setQuantidade(result.getInt("quantidade")); mercadoria.setPreco(result.getDouble("preco")); } pstm.close(); } catch (SQLException e){} return mercadoria; } E então no método responsável por exibir os dados tela, ficaria assim: public void bar(){ int id = Integer.parseInt(JOptionPane.showInputDialog("Digite o ID para consulta: ")); MercadoriaDAO dao = new MercadoriaDAO(); Mercadoria mercadoria = dao.consulta(id); if(mercadoria != null){ tela.tId.setText(mercadoria.getId()); tela.tNome.setText(mercadoria.getNome()); // os outros JTextFields... } else JOptionPane.showMessageDialog(null, "Nenhuma mercadoria encontrada."); } Compartilhar este post Link para o post Compartilhar em outros sites