java学习笔记---Cookie 和 session

客户端技术 用户访问的记录 浏览器有缓存 下次登录直接显示 服务器为每个用户创建一个cookie 发送给浏览器 告诉浏览器保存起来
浏览器把这些信息保存在本地,当下一次浏览器向服务器发送请求时,浏览器把 这些Cookie 信息发送到服务器,服务器将使用这些信息来识别用户


session :

servlet存储的方式:

    request.setCharacterEncoding("utf-8");//设置编码
    response.setContentType("text/html;charset=utf-8");
    //第一种方式session方式
    request.getSession().setAttribute("key","value");//获得session  将内容以key value的形式存入session中
    //第二种方式cookie方式
    response.addCookie(new Cookie("key","value"));//向Cookie中中添加内容 并存入本地磁盘中 注意 不能存中文
    //如果存中文的话 将中文转码   URLDecoder 的 decode 方法转换成utf-8的形式
    // 第三种方式 域对象存储
    getServletContext().setAttribute("key","value");
    //第四种  request方式存储
    request.setAttribute("key","value");
    //pageContext通过上下页面共享对象进行存储  和application方式  通过全局存储       两者用在jsp页面中   servlet中不能使用
    // pageContext.setAttribute("key","这是来自page");
   // application.setAttribute("key","这是来自ServletContext");

服务器为访问的用户创建session 保存数据 操作习惯,session在服务器中对你这个账号存储了一些数据



servlet session 跟踪

http是一个无状态连接 客户端每次打开一个页面,服务器不会自动保存客户端请求的任 何记录维持浏览器与服务器之间的session会话

1 创建cookie对象 客户端后续的访问找到cookie 。

2 隐藏表单字段 提交的时候 名称和值会自动包含在get
post中 有效手

段 常规的超文本连接不支持session 跟踪。

3 url 重写 在url 后面写入 一些标识 缺点 动态生成每一个url 为页面分配session id 简单静态网页也是如此 4
HttpSession 对象 会持续一段时间的页面请求

你可能感兴趣的:(java,servlet,cookie,session,个人学习)