Esse tutorial, retirado do site forumweb, mostra um exemplo simples de session em JSP, dando uma base para que você possa fazer coisas mais avançadas. Ele é composto de 4 arquivos: index.html (Arquivo com o formulário para login), logar.jsp (Arquivo que verifica se login e senha estão corretos), logado.jsp (Arquivo com a “página” para usuários logados) e logoff.jsp(Que destroi as sessions).
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sistema de Login :: JSP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
body, td, a:link, a:visited {
font-family: Verdana;
font-size: 10px;
color: #000000;
text-decoration: none;
}
a:hover{
color: #FF0000;
}
input {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
background-color: #FFFFFF;
border: 1px solid #000000;
}
</style>
</head>
<body>
<center>Para logar-se no sistema informe seu login e senha:</center><br /><br />
<form name="form1" method="post" action="logar.jsp">
<table width="180" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td width="55">Login:</td>
<td width="122"><input name="login" type="text" id="login"></td>
</tr>
<tr>
<td height="18">Senha:</td>
<td><input name="senha" type="password" id="senha"></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="Logar">
</div></td>
</tr>
</table>
</form><br /> <br /> <br />Desenvolvimento: <a href="http://darkthales.hcerto.com" target="_blank">DarK ThaleS</a>
</body>
</html>
Agora vamos ao logar.jsp, arquivo que logará usuários registrando as sessions:
<%
String login = "thales"; // Login
String senha = "123"; // Senha
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sistema de Login :: JSP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
body, td, a:link, a:visited {
font-family: Verdana;
font-size: 10px;
color: #000000;
text-decoration: none;
}
a:hover{
color: #FF0000;
}
input {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
background-color: #FFFFFF;
border: 1px solid #000000;
}
</style>
</head> <body>
<%
String login_form = request.getParameter("login"); // Pega o Login vindo do formulário
String senha_form = request.getParameter("senha"); //Pega a senha vinda do formulário
if(login_form.equals(login) && senha_form.equals(senha)){ //Caso login e senha estejam corretos...
out.println("Logado com sucesso."); //Mostra na tela que foi logado com sucesso
session.putValue("loginUsuario", login); //Grava a session com o Login
session.putValue("senhaUsuario", senha); //Grava a session com a Senha
out.println("<script>document.location.href='logado.jsp';</script>"); //Exibe um código javascript para redireionar ao painel
} else { //Se estiverem incorretos...
out.println("Login ou senha inválidos. <a href='java script:back()'>Voltar</a>"); //Exibe na tela e pede para voltar
}
%>
<br /> <br /> <br />Desenvolvimento: <a href="http://darkthales.hcerto.com" target="_blank">DarK ThaleS</a>
</body>
</html>
Agora o logado.jsp, página dos usuários logados:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sistema de Login :: JSP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
body, td, a:link, a:visited {
font-family: Verdana;
font-size: 10px;
color: #000000;
text-decoration: none;
}
a:hover{
color: #FF0000;
}
input {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
background-color: #FFFFFF;
border: 1px solid #000000;
}
</style>
</head> <body>
<%
//Verifica se está logado
if(session.getValue("loginUsuario") != null || session.getValue("senhaUsuario") != null){
out.println("Você está logado com sucesso no sistema, por isso consegue ver está pagina. Seu login é: " + session.getValue("loginUsuario") + " e sua senha: " + session.getValue("senhaUsuario") + ". Clique <a href='logoff.jsp'>aqui</a> para sair do sistema");
} else {
out.println("Você não está logado no sistema. Clique <a href='index.html'>aqui</a> para logar-se");
}
%>
<br /> <br /> <br />Desenvolvimento: <a href="http://darkthales.hcerto.com" target="_blank">DarK ThaleS</a>
</body>
</html>
E por último, o logoff.jsp:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sistema de Login :: JSP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
body, td, a:link, a:visited {
font-family: Verdana;
font-size: 10px;
color: #000000;
text-decoration: none;
}
a:hover{
color: #FF0000;
}
input {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
background-color: #FFFFFF;
border: 1px solid #000000;
}
</style>
</head>
<body>
<%
//Destroi as sessions
session.invalidate();
out.println("Você saiu com sucesso do sistema. Tente ver agora a página dos \"<a href='logado.jsp'>logados</a>\" ou efetue novamente <a href='index.html'>login</a>");
%>
<br /> <br /> <br />Desenvolvimento: <a href="http://darkthales.hcerto.com" target="_blank">DarK ThaleS</a>
</body>
</html>