Introduction#
Implementing user login and logout using JSP
Preparation#
IDEA, tomcat, JDK18
Login page HTML#
<title>User Login</title>
</head>
<body>
<form action="index.jsp" method="post" >
<h3><span>Login</span></h3>
<a>Username:</a><input type="text" name="username"><br>
<a >Password:</a><input type="password" name="password"><br>
<br>
<div>
<button >Login</button>
<INPUT TYPE="reset" value="Reset" >
<INPUT TYPE="button" value="Register" >
</div>
</form>
Code for handling correct or incorrect login information#
<%
request.setCharacterEncoding("UTF-8");
String name=request.getParameter("username");
String password=request.getParameter("password");
%>
<%
if(name.equals("小梦")&&password.equals("666"))
{
out.print("Input is correct");
request.setCharacterEncoding("UTF-8");
session.setAttribute("username",name);
request.getRequestDispatcher("welcome.jsp").forward(request, response);
}else{%>
<% }%>
Incorrect username or password, waiting for 3s to redirect to login<br>
<input type="button" value="Return to Login" onclick='location.href=("login.html")'/>
<% response.setHeader("Refresh", "3,URL=login.html");%>
Successful login page#
<% String name=(String)session.getAttribute("username");
if(name!=null){%>
<div >
<form action="index.jsp" method="post" >
<h3><%=session.getAttribute("username")%><a>, Welcome, visit personal space</a></h3>
<div >
<INPUT TYPE="reset" value="Logout"onclick='location.href=("kill.jsp")' >
<input type="button" value="Return to Login" onclick='location.href=("login.html")'/>
</div>
</form>
</div>
<%}else{ %>
<% response.setHeader("Refresh", "0,URL=kill.jsp");%>
<%} %>
Logout page#
<% String name=(String)session.getAttribute("username");
if(name!=null){%>
<div >
<form action="index.jsp" method="post" >
<h3><%=session.getAttribute("username")%><a>, Logging out account, please wait for 5s</a></h3>
<div>
<%session.invalidate();
response.setHeader("Refresh", "5,URL=login.html");
%>
</div>
<%}else{ %>
<div >
<form action="index.jsp" method="post" >
<h3><%=session.getAttribute("username")%><a>, Reason: You are not logged in, please login and try again, automatically redirected to login after 5s</a></h3>
<div style="text-align: center">
<input type="button" value="Return to Login" onclick='location.href=("login.html")'/>
</div>
</form>
</div>
<% response.setHeader("Refresh", "5,URL=login.html");%>
<%} %>