在我们浏览网页中,每发一次请求,都会在本地写下Cookies,如果Cookies不设置时间的话,只是在浏览器中保存,在当前窗口和子窗口中有效,在新打开的窗口中读不到数据。
一个Servlet/JSP设置的Cookies能够被同一个路径下面或者子路径下面的Servlet/JSP读到,其他路径无法读取到。例如在我们设置了JSP的访问路径是Boy/TestServlet,那么我们在Boy/TestServlet/SucServlet下面能够使用所设置的Cookies,但是在Boy/以外的其它路径下面根本找不到设置的Cookies。
在我们使用Session时,每次在服务器端创建Session对象时,同时返回一个SessionId对象给客户端(浏览器),在客户端写入Cookies,这个SessionId标识了Session对象与浏览器对象组成,并且该SessionId只属于当前窗口,当浏览器关闭时,连接中断,保存在浏览器中的Session对象消失(客户端产生的这个SessionId只是存在),而服务器端的Session对象则要等到Session过期时间后自动消失(如若不然的话,每次会话都在服务器端产生一个Session对象,对于N多的用户来说,那么多的对象对于内存的消耗来说是无法处理的)。