JAVA培训之HttpSession案例分析

经过HttpSession第一例的练习,大家对session的用法有了一定的了解,下面我们来学习保存用户登录信息案例,该案例不仅使用了session对象,还使用了Cookie对象。将登录用户的信息保存在session中,将用户名保存在Cookie中实现记住用户名功能。下面我们就来详细介绍该案例:
(1)首先介绍该案例需要的页面和Servlet类,如下所示:

  • login.jsp:登录页面;
  • succ1.jsp:登录成功后访问的页面,没有登录不能访问;
  • succ2.jsp:登录成功后访问的页面,没有登录不能访问;
  • LoginServlet :校验用户是否登录成功。

(2)针对以上资源进行分析,具体如下:

  • login.jsp:提供登录表单,表单中的字段有用户名和密码,表单提交的请求是LoginServlet;
  • LoginServlet:获取请求参数,校验用户是否登录成功:
  • 登录成功:保存用户信息到session域中,然后重定向到succ1.jsp页面,在succ1.jsp页面中显示当前登录的用户信息;
  • 登录失败:将错误信息保存在request域中,然后请求转发到login.jsp页面,并在login.jsp页面显示错误信息;
  • succ1.jsp:从session域中获取用户信息,如果不存在,保存错误信息到request域中,然后转发到login.jsp页面,在login.jsp页面显示错误信息“您还没有登录!请先登录!“;
  • succ2.jsp:从session域中获取用户信息,如果不存在,保存错误信息到request域中,然后转发到login.jsp页面,在login.jsp页面显示错误信息“您还没有登录!请先登录!“。

通过以上分析可知,succ1.jsp和succ2.jsp的功能是一样的,都是成功页面,但是该成功页面在用户没有登录的情况下不能够访问。
下面通过一张图来了解保存用户登录信息案例的工作流程,如图1-1所示:
JAVA培训之HttpSession案例分析
图1-1 案例序列图
图1-1中,如果用户是登录之后再访问succ1.jsp和succ2.jsp就可以看到用户信息,如果没有登录就访问succ1.jsp和succ2.jsp,那么就转发到login.jsp页面先进行登录。





原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/253179.html

(0)
上一篇 2022年5月7日
下一篇 2022年5月7日

相关推荐

发表回复

登录后才能评论