码迷,mamicode.com
首页 > Web开发 > 详细

jsp 会话

时间:2015-01-25 18:02:45      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

session和cookie的区别:
1、session是保存在服务器端,cookie是保存在客户端。
2、session可以保存任何对象,cookie只能保存字符串对象。
3、session更安全,cookie不安全,不能存储敏感数据,对保存的数据进行加密处理。
4、session默认过期时间30分钟,cookie默认过期时间关闭浏览器后。
5、session适合保存客户状态,cookie适合保存持久化的数据状态。

 

1.Session对象

session机制是一种服务器机制,在服务器保存信息,当程序接收到客户端的请求时,服务器首先会检查这个客户端是否已经创建了Session.

session保存数据:

session.setAttribute(String key,Object value)

session中读取数据:

(Object)session.getAttribute(String key)

 

方法                 返回值类型                                            说明                          
setAttribute(String key,Object value) void 以key-vlaue的形式保存对象值
getAttribute(String key) Object 通过key获取对象值
getId() String 获取sessionID
Invalidate void 设置session对象失效
setMaxInactiveInterval(int interval) void 设置session的有效期
removeAttribute(String key) void 移除session中的属性

注册页面

    if(username.equals("admin")){
            //不允许注册,返回注册页面
            request.setAttribute("mess", "注册失败,请使用其他用户名");
            //response.sendRedirect("login.jsp");//返回注册页面没有任何提示信息(实现页面跳转)
            request.getRequestDispatcher("login.jsp").forward(request, response);//返回注册页面并提示信息
        }else{
            //注册成功
            session.setAttribute("user", username);//session保存数据
            response.sendRedirect("newsDetail.jsp");
        }

注册成功 后跳转到的页面

        <%     Object o=session.getAttribute("user");
            if(o==null){
                //显示用户名密码,可在此登陆(java代码和HTML代码结合使用情况)
            %>    
            <label>用户名</label><input type="text" name="uname" /><label>密码</label><input type="text" name="upassword" /><button>登录</button>
            <%
            }else{
                //显示“欢迎你,xxx”
                out.print("欢迎你,"+o.toString());
            }
        %>

 session有效期的设置

if(username.equals("admin")){
            //不允许注册,返回注册页面
            request.setAttribute("mess", "注册失败,请使用其他用户名");
            //response.sendRedirect("login.jsp");//返回注册页面没有任何提示信息(实现页面跳转)
            request.getRequestDispatcher("login.jsp").forward(request, response);//返回注册页面并提示信息
        }else{
            //注册成功
            session.setAttribute("user", username);//session保存数据
            //session.setMaxInactiveInterval(10);//设置有效期为10秒
            response.sendRedirect("newsDetail.jsp");
        }
    <%     Object o=session.getAttribute("user");
            if(o==null){
                //显示用户名密码,可在此登陆(java代码和HTML代码结合使用情况)
            %>    
            <label>用户名</label><input type="text" name="uname" /><label>密码</label><input type="text" name="upassword" /><button>登录</button>
            <%
            }else{
                //显示“欢迎你,xxx”
                out.print("欢迎你,"+o.toString());
                
                %>
                &nbsp;<a href="userLogout.jsp">注销</a>//创建注销链接
                <% 
            }
        
        %>

tomcat中wed.xml设置失效(这里10表示10分钟)

   </welcome-file-list>
        <session-config>
            <session-timeout>10</session-timeout>
        </session-config>
</web-app>

 

jsp 会话

标签:

原文地址:http://www.cnblogs.com/lgxstudy/p/4248476.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!