Hoje mais cedo postei uma dúvida sobre fazer pesquisa com parâmetros usando jdbc.
Agora o problema é outro, para que o parâmetro (chave primária da tabela) seja utilizado eu preciso inicializar ele em uma página, através de um campo “text” em um formulário.
Logo depois preciso recuperar o valor desse campo em uma outra página, página essa que deverá mostrar esse valor junto com todos os outros dados em uma tabela.
Por enquanto o código das páginas estão assim:
listar_perfis.jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form method="POST" action="listar_perfis2.jsp">
<input type="text" name="idPerfil">
<input type="submit" value="Enviar">
</form>
</body>
</html>
listar_perfis2.jsp
<%@page import="modelo.Perfil"%>
<%@page import="java.util.ArrayList"%>
<%@page import="modelo.PerfilDAO"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Lista de Perfis</h1>
<br>
<h1 align="center">Lista de perfis <a href="form_cadastrar_perfil.jsp">(Novo)</a></h1>
<br>
<table border="1" align="center" width="60%">
<tr>
<td>
ID
</td>
<td>
Perfil
</td>
<td>
Alterar
</td>
<td>
Excluir
</td>
</tr>
<%
try{
PerfilDAO pDB = new PerfilDAO();
ArrayList<Perfil> lista;
pDB.conectar();
lista = pDB.listar2(Perfil p);
for (Perfil p:lista){
%>
<tr>
<td>
<%=p.getIdPerfil() %>
</td>
<td>
<%=p.getNomePerfil() %>
</td>
<td>
<a href="form_alterar_perfil.jsp?idPerfil=<%=p.getIdPerfil() %>">Alterar</a>
</td>
<td>
<a href="excluir_perfil.do?idPerfil=<%=p.getIdPerfil() %>">Excluir</a>
</td>
</tr>
<%
}
pDB.desconectar();
}
catch (Exception erro){
out.print (erro);
}
%>
</table>
</body>
</html>
PerfilDAO
public Perfil listar2(Perfil p) throws Exception {
String sql = "SELECT * FROM perfil WHERE idPerfil=?";
PreparedStatement pst;
ResultSet rs;
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
if (rs.next()) {
p.setIdPerfil(rs.getInt("idPerfil"));
p.setNomePerfil(rs.getString("nomePerfil"));
}
return p;
}
PS: Em listar_perfis2.jsp. O Netbeans acusa um erro na linha 37, alguém pode me dizer o porque?