Olá pessoal!
estou com dificuldade de compilar o seguinte componente:
packagecom.empresa.beans;importjava.io.Serializable;importjava.sql.*;publicclassAcessoDBimplementsjava.io.Serializable{publicAcessoDB(){}publicStringgetConsulta(){try{Stringdsn="jdbc:odbc:banco_integra";Stringuser="";Stringsenha="";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connectioncon=DriverManager.getConnection(dsn,user,senha);Statementst=con.createStatement();Stringsql="select * from tb_pessoal";ResultSetrs=st.executeQuery(sql);while(rs.next()){return(rs.getString("nome"));}st.close();con.close();}catch(Exceptione){System.out.println("Sem conexão...");}}}
Está dando o erro : missing return statement
Pode me ajudar rodar este bean?
valeu!
Vamos analisar o qeu vc esta fazendo e o qeu vc está qeurendo... Pelo que eu percebi vc está qeurendo retornar todos os valores do recordSet. bom um erro esta vc declarando a String dentro do while, outro é que o retorno qeu vc terá será apenas o ultimo registro da tua tabela, consegue perceber o porque??? Espero qeu sim...
Então o que vc precisa fazer é criar um array de Strings e assim ir gravando dentro do while em cada posiçao do array o retorno do rs.
Exatu juju tem toda razão.Desculpe as vezes tento responder as coisas aqui rapidamente no horário de trabalho, e muitas vezes tenho que fechar o o browser , ou não da para ler direito a dúvida…
Nesse caso pode usar também um Arraylist.
J
Juliano_CarnielPJ
hahahaha jujU é foda… hahahaha
ta certo que jujo num eh um dos apelidos mais masculinos, mas é apelido de infancia, dai sabe como é né…
bom, e quanto ao negocio das duvidas é normal isso ai, as vezes tbm tenho que responder meio sem pensar… é por isso qeu temos os amigos aqui =)
Abraço!
B
BACANAPJ
meus caros, ainda está dando erro :
O codigo está exatamente assim:
packagecom.empresa.beans;importjava.io.Serializable;importjava.sql.*;publicclassAcessoDBimplementsjava.io.Serializable{publicAcessoDB(){}publicStringgetConsulta(){try{Stringdsn="jdbc:odbc:banco_integra";Stringuser="";Stringsenha="";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connectioncon=DriverManager.getConnection(dsn,user,senha);Statementst=con.createStatement();Stringsql="select * from tb_pessoal";ResultSetrs=st.executeQuery(sql);String[]retorno=null;intcount=0;while(rs.next()){retorno[count]=rs.getString("nome");count++;}returnretorno;}//fecha trycatch(Exceptione){System.out.println("Sem conexão...");}finally{con.close();st.close();}}}
J
Juliano_CarnielPJ
Olá
viu, sempre que colar um codigo com erro, poste tbm a mensagem de erro que da. Pois assim, fica mais facil a identificação do erro
bom, um erro é qeu vc esta retornando um array, porém no cabeçalho do método ele requer um retorno String simples. o que vc tem qeu fazer, eh colocar la no método String[].
Bom, quando ao con, t o st, eles não serão visiveis fora do try, pois foram declarados la dentro. oq eu vc tem qeu fazer eh declara-los antes do try!
Valew!
Até mais!
B
BACANAPJ
Olha eu denovo…
beleza o codigo agora compilou mas quando puxo ele como um bean no jsp ele retorna null…O array nao está sendo implementado…Por que?
codigo:
packagecom.empresa.beans;importjava.io.Serializable;importjava.sql.*;publicclassAcessoDBimplementsjava.io.Serializable{publicAcessoDB(){}publicString[]getConsulta(){String[]ret=null;try{Stringdsn="jdbc:odbc:banco_integra";Stringuser="";Stringsenha="";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connectioncon=DriverManager.getConnection(dsn,user,senha);Statementst=con.createStatement();Stringsql="select * from tb_pessoal";ResultSetrs=st.executeQuery(sql);inti=0;while(rs.next()){ret[i]=rs.getString("nome");i++;}}catch(Exceptione){System.out.println("Sem conexão...");}returnret;}}
J
Juliano_CarnielPJ
Olá
Experimentes colocar esse código dentro do construtor de sua classe… realmente quando vc criaum objeto dela ele vai retornar null