Boa noite pessoal.
Estou desenvolvendo uma aplicação web, projeto da faculdade, eu efetuo o login com um usuário e senha cadastrados no banco de dados (PostGre)
ao clicar em editar perfil, eu gostaria de preencher os campos com os dados do usuario, para que ele visualize e então edite, porém, so consigo retornar o userid dele, que está na sessão, aí pensei, vou buscar os dados no banco e colocar na sessão também, mas ta dando erro ao buscar esses dados, dá uma exception com essa mensagem no Tomcat
org.postgresql.util.PSQLException: ERRO: erro de sintaxe em ou próximo a “=”
Posição: 35
Ja testei a SQL diretamente no banco, e ela funciona.
segue abaixo o meu método que busca os dados no banco, ou melhor, tenta buscar.
coloquei um coment onde ele lança exception. (linha 24 de acordo com a prévisualização)
Agradeceria muito se conseguissem me ajudar.
E me desculpem se postei errado, é minha primeira vez :oops:
public CadastroUsuario getCadastro(String userid) {
StringBuffer sql = new StringBuffer("");
sql.append("SELECT * FROM usuario");
sql.append("WHERE userid = ?");
Connection cn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
cn = PostgreDAOFactory.createConnection();
ps = cn.prepareStatement(sql.toString());
ps.setString(1, userid);
rs = ps.executeQuery();
if (rs.next()) {
return this.populaUsuario(rs);
} else {
return null;
}
}catch (Exception e) {
e.printStackTrace(); // LANÇA ESSA EXCEPTION
} finally {
if (rs != null) {
try {
rs.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if (ps != null) {
try {
ps.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if (cn != null) {
try {
cn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
return null;
}