• JSP数据交互(二)


    一 . 什么是cookie(javax.servlet.http)

    答 : 1 . cookie是由Netscape公司发明 , 是最常用的跟踪用户会话的方式 ;     

           2 . 它是由服务器端生成并发送给客户端浏览器的 , 浏览器会将其保存为某个目录下的文件 ;     

           3 . cookie一般是用户在浏览网站的时候输入的一些文字信息或者选择 , 当用户下一次访问该网站时 , 服务器会先从客户端查看是否有保存下来的cookie信息 ,

        然后根据cookie的内容 , 呈现特定的页面给用户 ;     

         4 . 最典型的cookie应用情景就是保存用户登录网站的一些帐号和密码 , 用户可以选择下次自动登录 , 以简化操作 , 但在数据上 , 可能会有安全问题的存在 ;

    二 . cookie作用的体现
    答 : 1 . 对特定对象的追踪 , 如访问者的访问次数 , 最后的访问时间 , 路径等 ;      

           2 . 统计网页的浏览次数 ;      

           3 . 在cookie的有效期内记录用户的登录信息 ;      

           4 . 实现各种个性化服务 , 如针对不同用户喜好 , 以不同的风格展示不同的内容 ;

    三 . 在JSP中使用cookie答 :

          1 . 创建cookie对象          

               Cookie newCookie=new Cookie(String name,String value);     

          2 . 写入cookie         

               response.addCookie(newCookie);

    四 . cookie的常用方法答 :

          1 . void setMaxAge(int expiry) : 设置cookie的有效期以秒为单位 ;      

          2 . void setValue(String value) : 在cookie对象创建后 , 为cookie对象赋予新的值 ;      

          3 . String getName() : 获得cookie的名称 ;     

          4 . String getValue() : 获取cookie的值 ;     

          5 . int getMaxAge() : 获取cookie的有效时间 , 以秒为单位 ;

    特别注意 :          

         1 . 通过response对象的addCookie()方法写入cookie ;        

         2 . 通过request对象的getCookie方法得到cookie数组 , 之后进行遍历输出cookie的值 ;        

         3 . cookie是通过name/value方式进行保存的 , 因此必须先调用cookie对象的getName()方法对每个数组成员的名称进行检查 , 直到找到我们需要的cookie , 之后用getValue()方法获取名称对应的值 ;

    特别注意 :      

        如果不实用response重定向 , 而是使用getRequestDispatcher().forward(request,response)转发的话 , 是看不到cookie中的JSESSIONID的 ,

        因为重定向是将页面重新定向到一个新的地址 , 在跳转之前 , 已经对上一个请求作出了响应 , 在客户端写入了cookie ; 如果用转发的形式 ,

        跳转之前并没有对上一个请求做出响应 , 因而在客户端没有写入cookie , 这个时候只要直接输入URL , 再次跳转后的页面 , 就可以看到上次响应写入的cookie ;

  • 相关阅读:
    python- 如何return返回多个值
    python基础之 list和 tuple(元组)
    tomcat日志分析详解
    【转】Mac下升级python2.7到python3.6
    jmeter大神博客笔记
    Charles安装包及破解包下载地址
    【转】测试管理一点点建议
    【转】优秀PMP项目经理必备的8个要素
    【这特么是个坑。。。】iOS 10.3下解决Charles抓包ssl证书信任问题
    【转】快捷支付详解--比较详细
  • 原文地址:https://www.cnblogs.com/qinzhenyu/p/11136539.html
Copyright © 2020-2023  润新知