Session的应用

来源:互联网 发布:淘宝纠纷报警有用吗 编辑:程序博客网 时间:2024/06/05 22:52

在服务器端产生:

//如果有数据,就说明用户登陆成功,登陆成功的时候,需要在服务器去记录登陆成功的信息

                                HttpSession session =req.getSession();

                                //把用户的编号存储在session中

                                int userid = rowSet.getInt("userid");

                                session.setAttribute("userid", userid);

在其它页面或者servlet中判断session是否存在,如果存在,说明用户是登陆过的,如果不存在说明用户是没有登陆过:

//判断用户是否登陆过,如果没有登陆,就直接跳转到登陆的页面

             HttpSession session = req.getSession();

             if(session.getAttribute("userid")==null){//说明用户没有登陆

                       //页面发生跳转

                       //url路径发生改变,如果在request里存储数据,该数据无法到达下一个跳转的页面

                       resp.sendRedirect("login.jsp");

                       //另外一种跳转方式,是服务器端跳转,url路径不会发生改变,但是实际指向内容发生了改变

                       //并且该数据是可以通过request传递到下一个页面的

                       //req.getRequestDispatcher("login.jsp").forward(req, resp);

                      

                       return;

             }

 

关于Seesion的特点:

1)表示一次客户端与服务器之间的会话,什么时候Session会消失(如果一旦关掉浏览器,Session就自动消失了)。

2)session有可能会被服务器给清理掉。当服务器发现资源不足的情况下。session的存储是不稳定的,有可能会被服务器给清理掉。

3)session有一个最大会话时间。session在规定的时间内过期了,那么就相当于session已经被清理掉了。

0 0