Ola galera, tenho de fazer um metodo de busca para pegar com o resultset um parametro q é um cliente para passar como parametro na fachada, como faço, olhem o codigo:
publicContaAbstrataprocurar(Stringnum)throwsContaInexistenteException{Contaconta=null;ResultSetrs=null;Stringsql="select * from conta c where c.cpf = '"+num+"'";JOptionPane.showMessageDialog(null,sql);try{Statementstmt=DbConection.conecta().createStatement();rs=stmt.executeQuery(sql);if(rs.next()){Clientecliente;conta=newConta(rs.getString("numero"),rs.getDouble("saldo"),[b]rs.getObject(cliente.getCpf())[/b]);}}catch(SQLExceptione){thrownewRuntimeException(e.getMessage());}finally{}returnconta;}
if(rs.next()){
Clientecliente; //esta nulo conta=newConta(rs.getString("numero"),rs.getDouble("saldo"),rs.getObject(cliente.getCpf())); //esta linha esta errada//oresultsetnaoretornaumobjetocliente}
Stringsql="select * from conta c where c.cpf = '?'"List<Cliente>listaClientes=newArrayList<Cliente>();try{PreparedStatementps=conexao.prepareStatement(sql);// conexao é uma Connectionps.setInt(1,num);ResultSetrs=ps.executeQuery();while(rs.next()){Clientecliente=newCliente();cliente.setId(rs.getInt("id"));/* outros campos */listaClientes.add(produto);}}//etc..
darksteel3000
Olá galera tanto de um jeito como de outro o repositorio aceitou. o problema agora e na tela na hora de chamar o metodo de busca, vejam so:
String numero = tf_numero.getText(); //campo do meu jframe referente ao numero da conta
ContaAbstrata conta = null;
try{
conta = fachada.procurarConta(numero); // metodo para busca da conta
if(conta == null){
JOptionPane.showMessageDialog(null, "Preencha o campo de numero");
}else{
preencherCamposTela(conta); // metodo parapreencimento dos campos
}
}catch(ContaInexistenteException e){
JOptionPane.showMessageDialog(null, e.getMessage());
}
Sendo q toda vez q tento executar, entra no if() --> "Preencha o campo de numero".
E agora? Ajudem please heh !!!
darksteel3000
Ola amigos, consegui ajeitar, nem eu acredito q cometi esse erro, pq eu sempre to setando a conta como nula, em vez de colocar o resultado do campo. Mais vlw aew a vcs q me ajudaram,
Abração !!!
H
Hulkmarciano
Que bom que tudo deu certo!
Só não se esqueça de colocar o post como [Resolvido] e se possivel poste o código que funcionou, assim vc contribui para com a comunidade.
darksteel3000
Resolvido, olha ai o codigo, abração !!!
publicContaprocurar(Stringnum)throwsContaInexistenteException{Contaconta=null;ResultSetrs=null;TipoClientetipo=null;Stringsql="select * from conta c where c.numero = '"+num+"'";JOptionPane.showMessageDialog(null,sql);try{Statementstmt=DbConection.conecta().createStatement();rs=stmt.executeQuery(sql);if(rs.next()){Clientecliente=newCliente();cliente.setCpf(rs.getString("cpf"));conta=newConta(rs.getString("numero"),rs.getDouble("saldo"),cliente);}}catch(SQLExceptione){thrownewRuntimeException(e.getMessage());}finally{}returnconta;}
darksteel3000
Aiaiai, sou nuuuuub mermo, rapa, como se coloca [RESOLVIDO] no topico?
H
Hulkmarciano
kkkk,
É só editar o primeiro Post, ai no Assunto vc coloca na frente [RESOLVIDO] e envia.