Όλα όσα πρέπει να γνωρίζετε για την περίοδο λειτουργίας στην Java;

Αυτό θα σας παρουσιάσει σε ένα θέμα που ονομάζεται Session In Java και σε διαδικασία θα σας ενημερώσει σχετικά με τον τρόπο λειτουργίας της Session management στην Java.

Αυτό θα σας παρουσιάσει σε ένα θέμα που ονομάζεται Session In Java και σε διαδικασία θα σας ενημερώσει σχετικά με τον τρόπο λειτουργίας της Session management . Οι ακόλουθοι δείκτες θα καλυφθούν σε αυτό το άρθρο,



Ας ξεκινήσουμε λοιπόν,



Συνεδρία στην Ιάβα

Το χρονικό διάστημα στο οποίο δύο συστήματα (δηλ. Ο πελάτης και ο διακομιστής) επικοινωνούν μεταξύ τους μπορούν να χαρακτηριστούν ως περίοδος σύνδεσης. Με πιο απλούς όρους, μια περίοδος σύνδεσης είναι μια κατάσταση που αποτελείται από πολλά αιτήματα και απόκριση μεταξύ του πελάτη και του διακομιστή.

Είναι γνωστό ότι οι διακομιστές HTTP και Web είναι και οι δύο απάτριδες. Ως εκ τούτου, ο μόνος τρόπος για να διατηρηθεί η κατάσταση του χρήστη είναι με τη χρήση τεχνολογιών που εφαρμόζουν παρακολούθηση συνεδρίας.
Η παρακολούθηση συνεδρίας σε servlets μπορεί να εφαρμοστεί με διάφορες μεθόδους, με τα cookies να είναι μία από αυτές. Ωστόσο, έχουν πολλά μειονεκτήματα:



  • Μόνο πληροφορίες κειμένου μπορούν να διατηρηθούν από αυτούς.
  • Εάν τα cookies έχουν απενεργοποιηθεί από έναν χρήστη, η εφαρμογή ιστού δεν μπορεί να τα χρησιμοποιήσει.
  • Δεν μπορεί να περιέχει περισσότερα από 4kb δεδομένων από ένα μόνο cookie.
  • Ένας άλλος τρόπος για να εφαρμόσετε την παρακολούθηση συνεδρίας είναι να δημιουργήσετε συνεδρίες με μοναδικά αναγνωριστικά περιόδου σύνδεσης για κάθε χρήστη σε ένα java servlet.

Προχωρώντας με αυτό το άρθρο σχετικά με την περίοδο λειτουργίας στην Java

Διεπαφή συνεδρίας Http

Servlets στο java παρέχουν μια διεπαφή γνωστή ως «HttpSessionInterface».
Αποτελούνται από διάφορες μεθόδους, μερικές από τις οποίες συζητούνται παρακάτω:

  • public HttpSession getSession (boolean create): Αυτή η μέθοδος συνδέει τη συνεδρία με το αίτημα. Σε περίπτωση που δεν είναι διαθέσιμο ή δεν υπάρχει, δημιουργείται μια νέα περίοδος σύνδεσης που βασίζεται στο ορισμένο όρισμα Boolean.
  • public String getId (): Το μοναδικό αναγνωριστικό περιόδου σύνδεσης επιστρέφεται με αυτήν τη μέθοδο.
  • public long getCreationTime (): Η ώρα δημιουργίας της περιόδου λειτουργίας επιστρέφεται με αυτήν τη μέθοδο. Μετράται σε χιλιοστά του δευτερολέπτου.
  • public long getLastAccessedTime (): Ο χρόνος κατά τον οποίο πραγματοποιήθηκε τελευταία πρόσβαση στη συνεδρία επιστρέφεται με αυτήν τη μέθοδο. Μετράται σε χιλιοστά του δευτερολέπτου.
  • public void validate (): Μια περίοδος λειτουργίας μπορεί να ακυρωθεί χρησιμοποιώντας αυτήν τη μέθοδο.

Παράδειγμα:
Στο παρακάτω παράδειγμα, χρησιμοποιήσαμε τη μέθοδο getAttribute () και setAttribute () της διεπαφής HttpSession.



Προχωρώντας με το πρώτο παράδειγμα σε αυτό το άρθρο Session In Java

μάθηση ssis βήμα προς βήμα

index.html

Ονομα χρήστη κωδικός:

Προχωρώντας με το δεύτερο παράδειγμα

μικρό ervlet1.java

import java.io. * import javax.servlet. * import javax.servlet.http. * δημόσια τάξη Servlet1 επεκτείνει το HttpServlet {public void doGet (HttpServletRequest request, HttpServletResponse response) {try {response.setContentType ('text / html') PrintWr pwriter = response.getWriter () String name = request.getParameter ('userName') String password = request.getParameter ('userPassword') pwriter.print ('Welcome' + name) 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. * δημόσια τάξη Servlet2 επεκτείνει το HttpServlet {public void doGet (HttpServletRequest request, HttpServletResponse response) {try {response.setContentType ('text / html') PrintWr 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)}}}

Προχωρώντας με το τέταρτο παράδειγμα σε αυτό το άρθρο Session In Java

web.xml

MyServlet1 Servlet1 MyServlet1 / φόρμα σύνδεσης MyServlet2 Servlet2 MyServlet2 / Καλώς ήλθατε

Υπάρχουν διάφορα πλεονεκτήματα και μειονεκτήματα αυτής της διεπαφής όπως αναφέρονται παρακάτω:

Συνεδρία στην Ιάβα

Πλεονεκτήματα:

  • Όλα τα είδη αντικειμένων, όπως βάση δεδομένων και κείμενο μπορούν να αποθηκευτούν σε μια συνεδρία.
  • Οι συνεδρίες είναι ασφαλείς.

Προχωρώντας με μειονεκτήματα

Μειονεκτήματα:

  • Δεδομένου ότι το αντικείμενο περιόδου σύνδεσης είναι αποθηκευμένο σε διακομιστή, υπάρχει επιβάρυνση απόδοσης.
  • Η σειριοποίηση και η απο-σειριοποίηση οδηγούν επίσης σε γενικά έξοδα.

Είναι εξαιρετικά συμφέρουσα η χρήση του HttpSessionInterface για την επίτευξη παρακολούθησης συνεδρίας.

Έτσι, έχουμε φτάσει στο τέλος αυτού του άρθρου σχετικά με το «Session In Java». Εάν θέλετε να μάθετε περισσότερα, δείτε το από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία μάθησης. Το μάθημα εκπαίδευσης και πιστοποίησης Java J2EE και SOA της Edureka έχει σχεδιαστεί για να σας εκπαιδεύσει τόσο για βασικές όσο και για προχωρημένες ιδέες Java μαζί με διάφορα πλαίσια Java όπως το Hibernate & Spring.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του ιστολογίου και θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό.