zoukankan      html  css  js  c++  java
  • HttpSession和jsp中session的区别(转)

    你听说过Session吗? 
    它是保存在服务器的一个标识,就想客户电脑上的Cookie。我们常见的网站管理员和普通用户之间就是用Session来区分的。 

    你所说的HttpSession是JSP中经常使用的一个方法,准确的说,是Request中的一个方法,比如。 
    Session = request.getSession(true); 
    用于获取Session 

    HttpSession 中可以跟踪并储存用户信息,把值设置到属性中,有2 个方法: 
    setAttribute(),getAttrribute(); 
    例如:在一个方法中用session.setAttribute(“student”,student);在 
    session 中设置一个属性名为student,值为一个名为student 的对象。而后可在 
    同一session 范围内用getAttribute(“student”)取出该属性,得到student 
    对象。 


    HttpSession session=request.getSession();为什么不用response儿用request! 
    首先回答为什么分别是response和request这两个内置对象。 
    你得先明白你通过获取对象是做什么用的,是往哪用的。 
    第一个PrintWriter out=response.getWriter() 
    是想获得一个输出流,用来响应客户端发出的请求。所以想响应客户端必须用response 
    第二个HttpSession session=request.getSession() 
    是从客户端获得一个session的对象,这个对象包含客户端持有的相关信息用来区别每个客户端.既然是从客户端就必须用请求对象来获取,因为一般都是客户端向服务器端发出的一个请求.所以用request对象。 
    Cookie和session这个得分开来说 
    两个都可以用来存私密的东西,同样也都有有效期的说法。 
    区别在于。 
    session是放在服务器上的,过期与否取决于服务期的设定,cookie是存在客户端的,过去与否可以在cookie生成的时候设置进去。 

    1、cookie数据存放在客户的浏览器上, 
    session数据放在服务器上 
    2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗 
    考虑到安全应当使用session 
    3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能 
    考虑到减轻服务器性能方面,应当使用COOKIE 
    4、单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。 
    5、所以个人建议: 
    将登陆信息等重要信息存放为SESSION 
    其他信息如果需要保留,可以放在COOKIE中

  • 相关阅读:
    OC UITextField只允许输入两位小数
    UIBezierPath使用
    2020-11-25:go中,map的底层数据结构是什么?
    2020-11-24:n个物品每个物品都有一定价值,分给2个人,怎么分两个人的价值差最小?
    2020-11-23:go中,s是一个字符串,s[0]代表什么?是否等于固定字节数?
    2020-11-22:mysql中,什么是filesort?
    2020-11-21:java中,什么是跨代引用?
    2020-11-20:java中,听说过CMS的并发预处理和并发可中断预处理吗?
    2020-11-19:go中,defer原理是什么?
    2020-11-18:java中,到底多大的对象会被直接扔到老年代?
  • 原文地址:https://www.cnblogs.com/zxw0004/p/4989585.html
Copyright © 2011-2022 走看看