³É¹¦Ñ¶Ï¢¡¢Ê¹ÓÃÕßÃû³Æ¡¢ÁôÑÔÓëÍ·Ïñ¡£ÏÂͼÊǸö¼òµ¥µÄʾ·¶¡£
ͼ4.10 ÐÂÔöÁôÑԳɹ¦
Ìáʾ£ºÕâ¸öÁ·Ï°¿ÉÒÔÈÃѧÉúÄ£·ÂÊéÖÐÔÚÏßÊéÇ©µÄÖÆ×÷Á÷³ÌÓ뷽ʽ¡£¿É½¨ÒéѧÉúÏÈÈçµÚ3ÕÂʵ×÷¼òµ¥µÄ¡¸¹Û¿´ÁôÑÔ¡¹¼°¡¸ÐÂÔöÁôÑÔ¡¹¹¦ÄÜ¡£ÔÙ½øÒ»²½¸ù¾ÝµÚ4Õ¸Äд£¬ÀûÓÃServletConfig¶ÁÈ¡Servlet³õʼ²ÎÊý£¬ÀûÓÃServletContext¶ÁȡӦÓóÌÐò³õʼ²ÎÊýµÈ¡£
17
µÚ5Õ¿κóÁ·Ï°
? Ñ¡ÔñÌâ
1. ÔÚä¯ÀÀÆ÷½ûÓÃCookieµÄÇé¿öÏ£¬ÄÄЩ»úÖÆÈÔ¿ÉÒÔÓÃÓڻỰ¹ÜÀí£¿
£¨A£© HttpSession £¨B£© URLÖØÐ´ £¨C£© Òþ²Ø×Ö¶Î £¨D£© Cookie API ´ð°¸£ºB¡¢C
2. ÈçºÎÉ趨CookieµÄÓÐЧÆÚÏÞ£¿
£¨A£© ʹÓÃsetMaxAge()
£¨B£© ʹÓÃsetMaxInactive()
£¨C£© ʹÓÃsetMaxInactiveInterval() £¨D£© ÔÚweb.xmlÖÐÉ趨
3. web.xmlÖÐ
ʱ ·Ö Ãë ºÁÃë
4. ºÎÕß¿ÉÒÔʵ×÷ʹÓÃÕßµÄ×Ô¶¯µÇÈë»úÖÆ£¿ £¨A£© £¨B£© £¨C£© £¨D£© ´ð°¸£ºB
HttpSession Cookie
HttpServletRequest URLÖØÐ´
5. ¹ØÓÚHttpSessionµÄsetMaxInactiveInterval()·½·¨£¬ÒÔÏÂÃèÊöºÎ
Õß´íÎó£¿
£¨A£© É趨µÄµ¥Î»ÊÇ¡¸·Ö¡¹
£¨B£© ÓÃÀ´É趨HttpSessionÔÚä¯ÀÀÆ÷¶à¾Ãû»î¶¯ºóʧЧ £¨C£© ÓÃÀ´É趨CookieµÄʧЧʱ¼ä
18
£¨D£© »á¸²¸Çweb.xmlÖÐ
6. ¹ØÓÚHttpSessionµÄÃèÊö£¬ÒÔϺÎÕß´íÎó£¿
£¨A£© ¹Ø±Õä¯ÀÀÆ÷ºóHttpSession¾Í»á±»»ØÊÕ £¨B£© ¿ÉÒÔÖ´ÐÐinvalidate()ʹ֮ʧЧ
£¨C£© ²»Í¬µÄä¯ÀÀÆ÷ʹÓÃÏàͬµÄSession ID£¬Ò²»áÈ¡µÃ²»Í¬µÄ
HttpSession¶ÔÏó
£¨D£© HttpSessionµÄsetMaxInactiveInterval()·½·¨É趨Ϊ-1
½«ÓÀ²»Ê§Ð§
´ð°¸£ºA¡¢C
Ìáʾ£º¹Ø±Õä¯ÀÀÆ÷ºóÁ¢¼´Ê§Ð§µÄÊÇ´¢´æSession IDµÄCookie£¬²»ÊÇHttpSession¶ÔÏó¡£
7. Äö¶ÔÏóÌṩÓÐsetAttribute()·½·¨£¿ £¨A£© ServletRequest £¨B£© HttpSession £¨C£© ServletConfig £¨D£© ServletContext ´ð°¸£ºA¡¢B¡¢D
8. ¹ØÓÚServlet£¯JSPµÄSession ID£¬ºÎÕßÕýÈ·£¿
£¨A£© Ô¤ÉèʹÓÃCookieÀ´´¢´æSession ID £¨B£© CookieµÄÃû³ÆÊÇJSESSIONID
£¨C£© ÔÚ½ûÓÃCookieʱ£¬¿ÉÒÔʹÓÃURLÖØÐ´À´·¢ËÍSession ID £¨D£© ±ØÐë×ÔÐкô½ÐHttpSessionµÄgetId()·½¿É²úÉú ´ð°¸£ºA¡¢C
Ìáʾ£ºSession IDµÄCookieÃû³ÆÊdz§É̸÷×Ôʵ×÷µÄ£¬JSESSIONIDÔÚTomcatÉϵÄʵ×÷Ãû³Æ¡£ÈÝÆ÷»á×Ô¶¯°ïÄã²úÉúSession ID¡£
9. Äö¶ÔÏóµÄÊôÐÔÉ趨¿ÉÒÔ¿çÔ½ÇëÇó·¶Î§£¿ £¨A£© £¨B£© £¨C£© £¨D£© ´ð°¸£ºB¡¢D
ServletRequest HttpSession ServletConfig ServletContext
10. HttpSessionʧЧµÄʱ»úΪºÎ£¿
19
£¨A£© Ö´ÐÐinvaliate()·½·¨
£¨B£© Ï´ÎÇëÇ󳬹ýweb.xmlÖÐ
? ʵ×÷Ìâ
1. Çëʵ×÷Ò»¸öWebÓ¦ÓóÌÐò£¬¿É¶¯Ì¬²úÉúʹÓÃÕßµÇÈëÃÜÂ룬Ëͳö´°Ìåºó±ØÐë
ͨ¹ýÃÜÂëÑéÖ¤²Å¿É¹Û¿´µ½Ê¹ÓÃÕßÒ³Ãæ¡£
Ìáʾ£º´ËÌâÈÔµÚ3Õ¿κóÁ·Ï°µÚ2¸öʵ×÷ÌâÖ®ÑÓÉì¡£
ͼ5.10 ͼƬÑéÖ¤
2. ʵ×÷Ò»¸öµÇÈë´°Ì壬Èç¹ûʹÓÃÕߺËÈ¡¡¸¼ÇסÃû³Æ¡¢ÃÜÂ롹£¬ÔòÏ´ÎÔì·Ã´°Ìå
ʱ£¬½«»á×Ô¶¯ÔÚÃû³Æ¡¢ÃÜÂë×Ö¶ÎÌîÈëÉϴεÇÈëʱËùʹÓõÄÖµ¡£
ͼ5.11 ¼ÇסÃû³Æ¡¢ÃÜÂë
20