JSP登录中Session的用法实例详解

本文实例讲述了JSP登录中Session的用法。分享给大家供大家参考,具体如下:

登录页面

<%@ page language="java" contentType="text/html; charset=utf-8"
  pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>insert title here</title>
</head>
<body>
 <div style="float:left;margin-top:100px;margin-left:200px;width:400px;height:300px;background:gray;">
 <form action="IndexServlet" method="post">
 <div style="float:left;width:400px;height:30px;background:gray;margin-top:50px">
  <div style="margin-left:70px;float:left;line-height:30px">账号:</div><input style="disply:block;float:left;width:200px;height:30px;border:none;" type="text" name="user"/>
 </div>
 <div style="float:left;width:400px;height:30px;background:gray;margin-top:50px">
  <div style="margin-left:70px;float:left;line-height:30px">密码:</div><input style="disply:block;float:left;width:200px;height:30px;border:none;" type="text" name="password"/>
 </div>
 <div style="float:left;margin-top:50px;width:400px;height:30px;background:gray;">
  <input style="float:left;width:60px;height:30px;margin-left:170px;border:none;" type="submit" name="ok" value="登录"/>
 </div>
 </form>
 </div>
</body>
</html>

检测账号密码以及设置session的IndexServlet

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
 * Servlet implementation class IndexServlet
 */
@WebServlet("/IndexServlet")
public class IndexServlet extends HttpServlet {
 private static final long serialVersionUID = 1L;
    
  /**
   * @see HttpServlet#HttpServlet()
   */
  public IndexServlet() {
    super();
    // TODO Auto-generated constructor stub
  }
 
 /**
 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
 */
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 // TODO Auto-generated method stub
 response.getWriter().append("Served at: ").append(request.getContextPath());
 }
 
 /**
 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
 */
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 // TODO Auto-generated method stub
 request.setCharacterEncoding("utf-8");
 String user = request.getParameter("user");
 String password = request.getParameter("password");
 
 String path = request.getContextPath();
 HttpSession session=request.getSession();
 
 if ("1".equals(user) && "1".equals(password)) {
  
  session.setAttribute("name", user);
  response.sendRedirect(path + "/success.jsp");
  
 }else{
  response.sendRedirect(path + "/Index.jsp");
 }
 }
 
}

成功登录页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
 String path = request.getContextPath();
%>
<%
 Object name = session.getAttribute("name");
 if(name==null){
 response.sendRedirect(path+"/Index.jsp");
 }
%>
<html>
 <head>
 <title>成功页面</title>
 </head>
 <body>
 恭喜你,骚年,<%=session.getAttribute("name") %>,成功登陆了!
 <a href="out.jsp" rel="external nofollow" >注销</a>
 </body>
</html>

注销功能的jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>insert title here</title>
</head>
<body>
 <% 
 String path = request.getContextPath();
 %>
 <%
   session.removeAttribute("name");
   response.sendRedirect(path+"/Index.jsp");
  %>
</body>
</html>

希望本文所述对大家jsp程序设计有所帮助。

本文章来源于网络,作者是:Z_DZ,由代码部落进行采编,如涉及侵权请联系删除!转载请注明出处:https://daimabuluo.cc/jspbiancheng/938.html

联系我们

在线咨询:点击这里给我发消息

邮件:dick@daimabuluo.cc

遇到问题?请给我们留言

请填写您的邮箱地址,我们将回复您的电子邮件