كل ما تحتاج لمعرفته حول الجلسة في جافا؟



سيقدم لك هذا موضوعًا يسمى Session In Java وفي العملية موجز لك حول كيفية عمل إدارة الجلسة في Java.

سيقدم لك هذا موضوعًا يسمى Session In Java ويوجزك في العملية بكيفية عمل إدارة الجلسة . سيتم تغطية المؤشرات التالية في هذه المقالة ،

فلنبدأ إذن ،





الجلسة في جافا

يمكن تسمية الفاصل الزمني الذي يتواصل فيه نظامان (أي العميل والخادم) مع بعضهما البعض على أنه جلسة. بعبارات أبسط ، الجلسة هي حالة تتكون من عدة طلبات واستجابة بين العميل والخادم.

انفورماتيكا تعليمي للمبتدئين pdf تحميل مجاني

من المعروف أن خوادم HTTP و Web كلاهما بدون حالة. وبالتالي ، فإن الطريقة الوحيدة للحفاظ على حالة المستخدم هي من خلال الاستفادة من التقنيات التي تنفذ تتبع الجلسة.
يمكن تنفيذ تتبع الجلسات في servlets بعدد من الطرق ، ملفات تعريف الارتباط هي واحدة منها. ومع ذلك ، فإن لها عيوبًا متعددة:



  • يمكن الاحتفاظ بالمعلومات النصية فقط من قبلهم.
  • إذا تم تعطيل ملفات تعريف الارتباط من قبل المستخدم ، فلن يتمكن تطبيق الويب من استخدامها.
  • لا يمكن احتواء أكثر من 4 كيلوبايت من البيانات بواسطة ملف تعريف ارتباط واحد.
  • هناك طريقة أخرى لتنفيذ تتبع الجلسة وهي إنشاء جلسات بمعرفات جلسة فريدة لكل مستخدم في java servlet.

المضي قدما مع هذه المقالة عن الجلسة في جافا

واجهة جلسة Http

توفر Servlets في جافا واجهة تعرف باسم 'HttpSessionInterface'.
وهي تتكون من طرق مختلفة ، تتم مناقشة بعضها أدناه:

  • public HttpSession getSession (إنشاء منطقي): تحصل هذه الطريقة على الجلسة المرتبطة بالطلب. في حالة عدم توفرها أو عدم وجودها ، يتم إنشاء جلسة جديدة تستند إلى الوسيطة المنطقية المحددة.
  • public String getId (): يتم إرجاع معرف الجلسة الفريد بهذه الطريقة.
  • getCreationTime () العامة الطويلة (): يتم إرجاع الوقت الذي تم فيه إنشاء الجلسة بهذه الطريقة. يقاس بالمللي ثانية.
  • getLastAccessedTime () العامة الطويلة العامة: يتم إرجاع الوقت الذي تم فيه الوصول إلى الجلسة آخر مرة بهذه الطريقة. يقاس بالمللي ثانية.
  • public void blankate (): يمكن إبطال الجلسة باستخدام هذا الأسلوب.

مثال:
في المثال الموضح أدناه ، استخدمنا طريقة getAttribute () و setAttribute () لواجهة HttpSession.



الانتقال إلى المثال الأول في مقالة الجلسة في Java هذه

index.html

اسم المستخدم كلمة المرور:

المضي قدما مع المثال الثاني

س ervlet1.java

import java.io. * import javax.servlet. * import javax.servlet.http. * public class Servlet1 توسع HttpServlet {public void doGet (HttpServletRequest request، HttpServletResponse response) {try {response.setContentType ('text / html') PrintWriter pwriter = response.getWriter () String name = request.getParameter ('userName') String password = request.getParameter ('userPassword') pwriter.print ('مرحبًا' + الاسم) pwriter.print ('هنا كلمة المرور الخاصة بك:' + كلمة المرور) HttpSession session = request.getSession () session.setAttribute ('usname'، name) session.setAttribute ('uspass'، password) pwriter.print (' عرض التفاصيل ') pwriter.close ()} catch (Exception exp) {System.out.println (exp)}}

المضي قدما مع المثال الثالث

Servlet2.java

import java.io. * import javax.servlet. * import javax.servlet.http. * public class Servlet2 توسع HttpServlet {public void doGet (HttpServletRequest request، HttpServletResponse response) {try {response.setContentType ('text / html') PrintWriter pwriter = response.getWriter () HttpSession session = request.getSession (false) String myName = (String) session.getAttribute ('usname') String myPass = (String) session.getAttribute ('uspass') pwriter.print ('الاسم : '+ myName +' Pass: '+ myPass) pwriter.close ()} catch (Exception exp) {System.out.println (exp)}}}

الانتقال إلى المثال الرابع في مقالة الجلسة In Java هذه

web.xml

MyServlet1 Servlet1 MyServlet1 / نموذج تسجيل الدخول MyServlet2 Servlet2 MyServlet2 / مرحبًا

هناك مزايا وعيوب مختلفة لهذه الواجهة كما هو مذكور أدناه:

فرز وظيفة c ++

الجلسة في جافا

مزايا:

  • يمكن تخزين جميع أنواع الكائنات ، مثل قاعدة البيانات والنصوص في جلسة.
  • الجلسات آمنة.

المضي قدما مع العيوب

سلبيات:

الوصف الوظيفي لمدير نظام لينوكس
  • نظرًا لأنه يتم تخزين كائن الجلسة على الخادم ، فهناك حمل زائد في الأداء.
  • يؤدي أيضًا التسلسل وإلغاء التسلسل إلى زيادة النفقات.

من المفيد للغاية استخدام HttpSessionInterface لتحقيق تتبع الجلسة.

وهكذا وصلنا إلى نهاية هذه المقالة حول 'Session In Java'. إذا كنت ترغب في معرفة المزيد ، تحقق من بواسطة Edureka ، شركة تعليمية موثوقة عبر الإنترنت. تم تصميم دورة تدريب وإصدار شهادات Java J2EE و SOA من Edureka لتدريبك على مفاهيم Java الأساسية والمتقدمة جنبًا إلى جنب مع العديد من أطر Java مثل Hibernate & Spring.

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في هذه المدونة وسنعاود الاتصال بك في أقرب وقت ممكن.