JAVA Session,Servlet 的学习总结

原创 2015年07月09日 16:39:31

   一、WEB 程序中,当用户第一次访问一个页面时候:

  a、在服务器端 会产生一个Session ,Session里面存放的信息是在这次回话结束前都一直能访问的数据。另外服务器还会为这次会话分配一个唯一标识  SessionID

  b、在客户端 会产生一个cookie并存储了服务器端产生的SessionID,Cookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去。这样,web资源处理的就是用户各自的数据了。

       【cookie 的使用:http://blog.csdn.net/microfhu/article/details/7091542

java 数据存入Session :

HttpSession session = request.getSession();
session.setAttribute("obj", JavaObj);

 引用:设置Cookie的最大保存时间,即cookie的有效期,当服务器给浏览器回送一个cookie时,如果在服务器端没有调用setMaxAge方法设置cookie的有效期,那么cookie的有效期只在一次会话过程中有效,

用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一次会话,当用户关闭浏览器,会话就结束了,此时cookie就会失效,如果在服务器端使用setMaxAge方法设置了cookie的有效期,比如设置了30分钟,那么当服务器把cookie发送给浏览器时,此时cookie就会在客户端的硬盘上存储30分钟,在30分钟内,即使浏览器关了,cookie依然存在,在30分钟内,打开浏览器访问服务器时,浏览器都会把cookie一起带上,这样就可以在服务器端获取到客户端浏览器传递过来的cookie里面的信息了,这就是cookie设置maxAge和不设置maxAge的区别,不设置maxAge,那么cookie就只在一次会话中有效,一旦用户关闭了浏览器,那么cookie就没有了,那么浏览器是怎么做到这一点的呢,我们启动一个浏览器,就相当于启动一个应用程序,而服务器回送的cookie首先是存在浏览器的缓存中的,当浏览器关闭时,浏览器的缓存自然就没有了,所以存储在缓存中的cookie自然就被清掉了,而如果设置了cookie的有效期,那么浏览器在关闭时,就会把缓存中的cookie写到硬盘上存储起来,这样cookie就能够一直存在了


【Cookie 的工作过程:http://blog.csdn.net/zyw_anquan/article/details/7642004/

web浏览器输入URL地址像服务器请求响应时,会检查本地cookie如果存在会将其拼装在URL的Header 位置,发送到服务器端。比如登录信息:

由于本地cookies 可能被人为替换掉所以建议:

1、将登陆信息等重要信息存放为SESSION
2、其他信息如果需要保留,可以放在COOKIE中


二、Servlet 学习

1、什么是servlet?

   编写在Server 服务端的程序,可以动态的拓展Server 的能力,并用请求-响应模式提供server 服务。

2、Servlet 服务的过程。

    客户端向服务器端提交请求;

    服务器端将请求数据提交给Servlet;

    Servlet生成响应内容并将其传给Server。响应内容动态生成,通常取决于客户端的请求;
     服务器将响应返回给客户端

3、Servlet 的生命周期。

    以Tomcat为例;Tomcat容器包含Servlet容器,servlet运行于Servlet 容器中。

   当Tomcat 启动时候 Servlet容器启动时自动装载某些Servlet, 默认情况下,当WEB客户第一次请求访问某个Servlet的时候,WEB容器将创建这个Servlet的实例。

Servlet生命周期分为三个阶段:

  1,初始化阶段  调用init()方法

  2,响应客户请求阶段  调用service()方法

  3,终止阶段  调用destroy()方法


Servlet终止阶段:

  当WEB应用被终止,或Servlet容器终止运行,或Servlet容器重新装载Servlet新实例时,Servlet容器会先调用Servlet的destroy()方法,在destroy()方法中可以释放掉Servlet所占用的资源。








相关文章推荐

Java Servlet学习笔记(七)Servlet Session跟踪

Servlet Session 跟踪 HTTP 是一种"无状态"协议,这意味着每次客户端检索网页时,客户端打开一个单独的连接到 Web 服务器,服务器会自动不保留之前客户端请求的任何记录。 但...

Servlet_Session和Cookie学习

  • 2013年10月17日 16:02
  • 909KB
  • 下载

servlet(5) - Cookie和session - 小易Java笔记

Cookie和session 1、会话概述 (1)会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。 (2)会话过程中的数...

java自学之路-----Servlet_Cookie,Session

cookie:客户端技术, session:

Java Web基础知识之Servlet(3):Session管理

Session 管理是Web应用开发中的一个重要的内容,其实每天我们浏览网站,网站的后台都是通过这门技术来记录我们的浏览状态,最典型的就是登录,每次你在网站上登录一次,当跳转到该网站的任何其他页面都不...

【Java.Web】Session —— 示例 —— Servlet —— 购物车示例,与JSP区别

JSP文件在默认情况下都支持Session,而HttpServlet类在默认情况下不支持Se

关于Java Servlet Session的一些不可不知的知识

session创建时间和保存位置;session如何在一个会话中的多次请求保持不变,即如何识别是一次会话的多个请求;session在分布式环境中如何保持和共享;session分布式环境中使用遇到的问题...

java旅行--第五站--servlet与JSP--java过滤器与session的小例子

过滤器与session
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA Session,Servlet 的学习总结
举报原因:
原因补充:

(最多只允许输入30个字)