HttpSession
मूल रूप से स्ट्रिंग कुंजी से कुछ मनमाना मूल्य के लिए एक नक्शा है। हर बार जब आप सत्र बनाते हैं (जेएसपी तक पहुंचकर या getSession()
/getSession(true)
पर कॉल करके), कंटेनर अद्वितीय स्ट्रिंग सत्र आईडी उत्पन्न करेगा और उस HttpSession
ऑब्जेक्ट का संदर्भ रखेगा। फिर, यह सत्र आईडी से HttpSession
ऑब्जेक्ट का मानचित्र उपयोग करेगा।
एक बार जब आप सत्र में कुछ डाल देते हैं, तो कंटेनर उस सत्र का संदर्भ रखता है और सत्र में आपके ऑब्जेक्ट का संदर्भ होता है। यह कुछ समय के लिए वहां रहेगा। तीन स्थिति है जब आपके आइटम सत्र से निकाल दिया जाएगा रहे हैं:
आप स्पष्ट रूप से यह (removeAttribute()
या setAttribute(null)
) को हटाने जब
जब आप invalidate()
पूरे सत्र। यह मूल रूप से सभी विशेषताओं को हटा देता है और पूरे सत्र को कंटेनर-प्रबंधित सत्र मानचित्र से हटा देता है
जब सत्र समाप्त हो जाता है (2 के साथ समान व्यवहार) ऐसा तब होता है जब कोई सर्वलेट/जेएसपी कॉन्फ़िगर करने योग्य समय में सत्र का उपयोग नहीं करता है (उदाहरण के लिए 10 मिनट)
पल एक वस्तु सत्र से निकाल दिया जाता है (ऊपर अंक) और कोई अन्य कोड के किसी भी है कि वस्तु के लिए एक संदर्भ रखती है, यह कचरा संग्रहण के लिए पात्र है और अगले जीसी चलाने के दौरान हटा दिया जाएगा ।
आप एक वस्तु है कि एक HttpSession को HttpSessionBindingListener लागू करता व्यवहार ऊपर वर्णित के कुछ निरीक्षण करने के लिए जोड़ सकते हैं। एक ऑब्जेक्ट जो इस इंटरफ़ेस को लागू करता है, उदाहरण के लिए, सत्र से अनबाउंड होने पर लॉग संदेश प्रिंट कर सकता है।
आप documentation here देख सकते हैं।
स्रोत
2012-07-12 16:48:30