دعونا نلقي نظرة على شرح أفضل للجلسة:
الجلسة جلسة. يمكن أن يحفظ معلومات المستخدم دون إغلاق المتصفح ، والذي يشبه الحاوية المؤقتة لتخزين هذه الأشياء المؤقتة. على سبيل المثال ، عند تسجيل الدخول ، احفظ معلومات المستخدم من صفحة ويب إلى أخرى ، يمكن حفظ معلومات المستخدم باستخدام جلسة لحفظ عربات التسوق على الويب ، والتي يمكن تنفيذها باستخدام الجلسة.
لماذا تحتاج إلى جلسة
هذا هو ملء قيود بروتوكول HTTP. عندما يزور المستخدم صفحة ما ، يقوم الخادم بإرجاع الطلب (على سبيل المثال ، بعد زيارة صفحة ويب ، تعرض الصفحة محتوى الصفحة وواجهة واجهة المستخدم لك) ، وحتى إذا تم الانتهاء منه ، يتم فصلها. لم يعد الخادم يتعقب حالة مهمة العميل (المتصفح). لذلك ، كل طلب من HTTP مستقل وغير مستقل. ويسمى HTTP أيضا بروتوكول عديمة الجنسية. إذا كنا نريد تشغيل بيانات المستخدم الخاصة في مناسبة أو عملية محددة ، فسيكون ذلك مزعجًا للغاية وحتى خطيرًا. على سبيل المثال ، يمكنك التفاعل مع الخادم من خلال نقل معلمة URL وتنفيذ العمليات ؛
ظهور الجلسة يحل هذه المشكلة. يتم إنشاء الجلسة على الخادم ويتم تدميرها بواسطة الخادم بعد فترة زمنية معينة. خلال هذه الفترة ، سيتم الحفاظ على الجلسة بين العميل والخادم ، وسيستخدم العميل معلومات الجلسة على الخادم للعثور على بعض البيانات أو تشغيلها ؛
كيفية استخدام الجلسة
يعطينا API Java فقط وسيلة للحصول على الجلسة المتعلقة بالجلسة الحالية:
جلسة httpsession = request.getSession () ؛ // أو جلسة httpsession = request.getSession (منطقية) ؛
القيمة المحددة:
Session.setAttribute ("key" ، كائن القيمة) ؛احصل على القيمة:
نوع الكائن OBJ = (نوع الكائن) SETATE.GETATTRIBUTE ("KEY") ؛ // على سبيل المثال ، اسم السلسلة = (سلسلة) session.getAttribute ("key") ؛حذف الجلسة لتحديد السمة:
Session.RemoVeatTribute ("key") ؛امسح جميع الجلسات لإبطال الجلسة الحالية تمامًا:
session.invalidate () ؛
إعداد فترة مهلة الجلسة
1. موقع تثبيت Tomcat conf/web.xml:
<Session-Config> <sessiont-timeout> 30 </sessiont-timeout> </session-config>
30 نقطة
2. Tomcat Installation Location Conf/Server.xml:
<context path = "/test" docBase = "/test" defaultSessionTimeOut = "3600" iswarexpanded = "true" iswarvalidated = "false" isInvokenabled = "true" iSworkDirPersistraft = "false"/>
وحدات في ثوان
3. إعدادات رمز Java:
جلسة httpsession = request.getSession () ؛ Session.setMaxInaCtactionInterval (1200) ؛
0 نقطة:
تعليمات أخرى:
1. حالة انتهاء الجلسة:
1>. يغلق متصفح العميل:
2>. الجلسة تنتهي الجلسة ؛
3>. يدعو جلسة العميل .invalidate () ؛
2. ما إذا كان المتصفح مغلقًا ولا تزال الجلسة موجودة ؛
عند إغلاق متصفح العميل ، ستظل الجلسة موجودة على الخادم لفترة معينة من الزمن. ومع ذلك ، عندما يفتح المتصفح مرة أخرى ، سيتم إنشاء جلسة جديدة. يطابق المتصفح جلسة الخادم من خلال سمة SessionId التي تم إنشاؤها ؛ الجلسة الأخيرة لا تزال موجودة ، ولكن لا يمكن الوصول إليها ؛
3. <٪ @ page session = "false" ٪> ما هو الوضع؟:
معنى هذه الجملة هو أنه لا يمكن استخدام الجلسة في الوقت الحاضر ، ولكن لا يزال من الممكن إنشاء جلسة الصفحة ؛
4. متى يتم إنشاؤها الجلسة:
تم إنشاؤه عندما يقوم البرنامج باستدعاء httpservletrequest.getSession (صحيح) ؛ إذا لم تستخدم الصفحة <٪@ page session = "false" ٪> ، عندما يتم تجميع صفحة JSP في Servlet ، جلسة httpsession = httpservletrequest.getSession (true) ؛
لخص
ما سبق هو كل شيء عن فهم جلسات في جافا. آمل أن يكون ذلك مفيدًا للجميع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!