<%@pageimport="java.sql.*"%><%@pageimport="org.postgresql.Driver"%><html><head><title>JDBCPostgreSQL-Teste</title></head><body><%Stringurl="jdbc:postgresql://localhost/teste";//estacorretoaurl?Stringusername="postgres";Stringpassword="regisclaus";Class.forName("org.postgresql.Driver").newInstance();Connectionconn=DriverManager.getConnection(url,username,password);%><h3>Aconexãoaobancodedadosfoibem-sucedida!</h3><%Statementst=conn.createStatement();Stringsql="select * from usuario where nome_usu = "+request.getParameter("login");ResultSetrs=st.executeQuery(sql);Stringnome=rs.getString("nome_usu");out.println(nome);//oselectestacorreto?ogetParameter(login)vemdeumatelalogin.jsp%></body></html>
1. A URL esta correta? Estou usando Windows + Postgre 8.2 + (Driver JDBC colocado na pasta WebContent/lib do projeto)
String sql = "select * from usuario where nome_usu = ?";
PreparedStatement st = conn.prepareStatement(sql);
st.setString(1, request.getParameter("login"));
ResultSet rs = st.executeQuery(sql);
String nome = rs.getString("nome_usu");
out.println(nome);
S
saninaimayer
Comentei dentro do teu código msm. Espero que ajude, se tiver confuso mande a resposta ai.
Ahh, só complementando, concordo com o nosso colega acima.
Espero ajudar.
1.<%@pageimport="java.sql.*"%>2.<%@pageimport="org.postgresql.Driver"%>3.<html>4.<head><title>JDBCPostgreSQL-Teste</title></head>5.<body>6.<%7.Stringurl="jdbc:postgresql://localhost:5432/teste";//Informeaportadeconexão.Assimvocêgarantetodasasinformaçõesdeconexão.8.Stringusername="postgres";9.Stringpassword="regisclaus";10.Class.forName("org.postgresql.Driver");//NãoprecisachamarométodonewInstance,bastaassimcomocoloquei.11.Connectionconn=DriverManager.getConnection(url,username,password);12.%>13.<h3>Aconexãoaobancodedadosfoibem-sucedida!</h3>14.<%15.Statementst=conn.createStatement();16.Stringsql="select * from usuario where nome_usu = '"+request.getParameter("login")+"'";//Umastringemsqldeve-secolocarentreaspas.17.ResultSetrs=st.executeQuery(sql);rs.next();//Estalinhaestavafaltandoparavocêpegaroresultadodatuaconsulta18.Stringnome=rs.getString("nome_usu");19.out.println(nome);20.21.//oselectestacorreto?ogetParameter(login)vemdeumatelalogin.jsp22.%>23.</body></html>
B
berg.pb
Uma dica Regis
procure não colocar muitos scriplets na página JSP.
seria melhor vc criar um objeto de conexção que será quem vai conectar co o banco.
daí, atraves dele, vc irá acessar o método de busca e atualização.
fazendo do jeito q vc está fazendo, fica mto bagunçado o código!
abraços
R
Raff
em um JSP nem Statement nem PreparedStatement, o correto é JSTL
R
Regis_Claus
O que é JSTL?
R
Regis_Claus
Fiz as mudanças como o "saninaimayer " e "Anderson Leite " e ficou assim:
<%@pageimport="java.sql.*"%><%@pageimport="org.postgresql.Driver"%><html><head><title>JDBCPostgreSQL-Teste</title></head><body><%Stringurl="jdbc:postgresql://localhost:5432/teste";Stringusername="postgres";Stringpassword="regisclaus";Class.forName("org.postgresql.Driver");Connectionconn=DriverManager.getConnection(url,username,password);%><h3>Aconexãoaobancodedadosfoibem-sucedida!</h3><%Stringsql="select * from usuario where nome_usu = ?";PreparedStatementst=conn.prepareStatement(sql);st.setString(1,request.getParameter("login"));ResultSetrs=st.executeQuery(sql);rs.next();Stringnome=rs.getString("nome_usu");out.println(nome);%></body></html>
O erro na pagina que mostra fala da linha:
ResultSet rs = st.executeQuery(sql);
Então ainda dando erro, seria alguma configuração do Apache ou do TomCat? Algum tutorial, dica de como acertar isso?
E " berg.pb ": Eu entendo essa dica, por enquanto estou sendo mais objetivo na conexão e na seleção mesmo
Agora cara, tem ambientes de desenvolvimento em java que te ajudam e muito nesses erros bestas como por exemplo o netbeans e o Eclipse. Eu uso e aconcelho o netbeans mas eh coisa de preferencia.
Como podem ver, coloquei uns println para verificar até onde vai a busca.
O erro esta no “ResultSet rs = st.executeQuery(sql);”
Os dados para a seleção estão ok, esta cadastrado corretamente o nome_usu com “Regis”.
Qual seria possivel problema?
Nossa estou precisando realmente resolver esse problema.
…
I
ivo_costa
Coloca a stack de erro ai.
Cara isso não é profissional né? Tipo isso é um trabalho de facul ou alguma brincadeira, pq não se coloca sql no jsp. Assim vc esta o usando o anti Pattern Lone Wolf, que consiste em fazer tudo em só lugar.
R
Regis_Claus
Coloca a stack de erro ai.
Cara isso não é profissional né? Tipo isso é um trabalho de facul ou alguma brincadeira, pq não se coloca sql no jsp. Assim vc esta o usando o anti Pattern Lone Wolf, que consiste em fazer tudo em só lugar.
Não esta dando Stack de erro. Esta simplesmente entrando no catch (SQLException)
A pagina que gera é isso:
"Prepared: OK Set - OK Não conectado "
E sim é coisa apenas de teste, eu sei de tudo isso, encapisulamento, e blá blá blá. Só quero consiguir fazer aparecer o BENDITO “Regis” do select.
Erro esquisito, tu tá tentado mostrar relatórios com o jasper reports?
Cara tenta colocar esse código em um método main, tira do jsp, se funcionar no main ai tu coloca no jsp.