注销Session及共享session案例
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Insert title here check.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Insert title here <% request.setCharacterEncoding("utf-8") ; String name = request.getParameter("uname"); String pwd = request.getParameter("upwd"); if(name.equals("zs") && pwd.equals("abc")){//假设 zs abc //只有登录成功,session中才会存在uname /upwd session.setAttribute("uname", name) ; session.setAttribute("upwd", pwd) ; System.out.println("sessionId"+session.getId()); //Cookie cookie = new Cookie("uname" ,namxe); //response.addCookie(cookie) ; //服务端在第一次响应客户端时,会发送一个 JSESSIONID的cookie //session.setMaxInactiveInterval(10) ; request.getRequestDispatcher("welcome.jsp").forward(request, response) ; }else{ //登录失败 response.sendRedirect("login.jsp") ; } %>
welocame.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Insert title here 欢迎您: <% String name = (String)session.getAttribute("uname") ; //如果 用户没有登录,而是直接 通过地址栏 访问welcome.jsp,则必然获取到的name是null if(name!=null){ out.print(name); System.out.println(); %>
注销 <% }else{//如果没有登录,应该跳转登录页面 response.sendRedirect("login.jsp"); } %>
a.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Insert title here <% out.print(session.getAttribute("uname")); Cookie[] cookies = request.getCookies(); for(Cookie cookie:cookies){ if(cookie.getName().equals("JSESSIONID")){ System.out.print("JSESSIONID"+cookie.getValue()); } } %>
通过登录和直接访问a.jsp在控制台分别输出
cookie和session的区别:
登录后点击 注销 跳回到登录页面
再次访问a.jsp时
登录之后不点击注销,直接访问a.jsp页面
JSP
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。