JSP腳本實現登錄驗證功能
登錄
點擊退出
登錄頁面login
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
String error = (String) request.getAttribute("eMess");
if (error!=null && !error.equals("")){
%>
<font color="red"><%=error%></font>
<%}%>
<form action="loginValidate.jsp" method="get">
<p>用戶名:<input type="text" name="userName"/></p>
<p>密 碼:<input type="password" name="password"/></p>
<p> <input type="submit" value="登錄"></p>
</form>
</body>
</html>
登錄驗證處理loginValidate
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
//獲取login頁面輸入的用戶名和密碼
String user = request.getParameter("userName");
String pwd = request.getParameter("password");
//創建StringBuffer對象存放錯誤信息
StringBuffer errorMsg = new StringBuffer();
//用戶名密碼登錄驗證
if (user.equals("")){
errorMsg.append("用戶名不能爲空!<br/>");
}
if (pwd.equals("")){
errorMsg.append("密碼不能爲空!<br/>");
}else if (pwd.length()<6){
errorMsg.append("密碼長度不能小於6位!<br/>");
}
//當用戶名和密碼沒問題時重定向到主頁面
if (errorMsg.toString().equals("")){
//將用戶名存入session中,並前往主頁面
session.setAttribute("userName",user);
response.sendRedirect("main.jsp");
}else {
//當用戶名或密碼有問題時將錯誤信息存入請求,並返回登錄頁面
request.setAttribute("eMess", errorMsg.toString());
%>
<jsp:forward page="login.jsp"></jsp:forward>
<%
}
%>
</body>
</html>
主頁面main
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>歡迎您!${sessionScope.get("userName")}</h1>
<a href="logout.jsp">安全退出</a>
</body>
</html>
登出logout
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<% //註銷session
session.invalidate();
response.sendRedirect("login.jsp");
%>
</body>
</html>