JSP登录验证功能的实现

来源:网络时间:2011-07-05

  静态的登录界面的设计login.htm,代码如下:

  <html>
  <head>
  <title>系统登录</title>
  <style type="text/CSS">...
  <!--
  .style1 {...}{
  font-size: 18px;
  font-weight: bold;
  }
  .style2 {...}{font-size: 24px}
  .style5 {...}{font-size: 16px}
  -->
  </style>
  </head>
  <body bgcolor="papayawhip" width="300" height="300">
  <center>
  <table border="2" bordercolor="black" bgcolor="lightgreen">
  <tbody>
  <tr>
  <td><div align="center" class="style1 style2">系 统 登 录
  </div></td>
  </tr>
  <form action="login.jsp" method="post">
  <tr>
  <td height="28"><span class="style5">用户名</span> <input type="text" name="uid" maxlength="20" style="width:150"></td></tr><br>
  <tr>
  <td><span class="style5">密&nbsp;&nbsp;码</span> <input type="password" name="upwd" maxlength="20" style="width:150"></td></tr><br>
  <center>
  <tr><td><div align="center">
  <input type="submit" value="登录" >&nbsp;&nbsp;
  <input type="reset" value="取消">
  </div></td></tr>
  </center>
  </form>  
  </tbody>
  </table>
  </center>
  </body>
  </html>

  将登录用户输入的信息提交到login.jsp页面机型处理,这里为了方便,不执行数据库的访问操作,直接使用sky2098作为登录用户名和密码,但在实际中是要从数据库中读取的,该jsp页面代码实现如下:

  <%...@ page contentType="text/html;charset=GB2312"%>
  <%...
  if(request.getParameter("uid").equals("sky2098")&&request.getParameter("upwd").equals("sky2098")){
  session.setAttribute("login","ok");
  session.setMaxInactiveInterval(-1);
  %>
  <jsp:forward page="main.jsp"/>
  <%...
  }else{
  out.println("用户名或密码输入错误!");
  }
  %>

  如果登录成功,则设定login的值为ok,提交到下一步验证页面,则进入main.jsp页面,否则,如果输入的用户名和密码不合法就打印错误信息,main.jsp页面代码如下:

  <%...@ page contentType="text/html;charset=GB2312"%>
  <%...@ include file="checkvalid.jsp" %>
  <html>
  <head>
  <title>~WELCOME TO MY HOMEPAGE~</title>
  </head>
  <body>
  <center>
  ~WELCOME TO MY HOMEPAGE~
  </center>
  </body>
  </html>
  这个页面使用<% @ include file="checkvalid.jsp" %>包含了一个jsp页面checkvalid.jsp为了验证输入信息的合法性:

  <%...
  if(session.getAttribute("login")==null||!session.getAttribute("login").equals("ok")){
  response.sendRedirect("login.htm");
  }
  %>
  如果输入信息有误,则回到登录页面,重新输入登录信息。  

  测试登录功能。

  启动Tomcat服务器,在IE地址栏中键入URL为:

  http://localhost:8080/sky2098/login-Advanced/login.htm

意见反馈
发表评论

最新评论(共2条)

2345市网友

这种验证有毛用,如果猜到路径,岂不是在地址栏输入直接今日后台

2012-08-20 0

回复@2345网友:

  • 取消

2345市网友

你这是JS表单验证啊 不是JSP  坑

2012-06-20 0

回复@2345网友:

  • 取消