Tot ce trebuie să știți despre sesiunea în Java?



Acest lucru vă va introduce într-un subiect numit Sesiune în Java și, în proces, vă va informa despre modul în care funcționează gestionarea sesiunii în Java.

Acest lucru vă va prezenta un subiect numit Sesiune în Java și vă va informa în timp despre modul în care funcționează gestionarea sesiunii . Următoarele indicații vor fi tratate în acest articol,

Deci, hai să începem atunci,





Sesiune în Java

Intervalul de timp în care două sisteme (de exemplu, clientul și serverul) comunică între ele poate fi denumit sesiune. În termeni mai simpli, o sesiune este o stare care constă din mai multe cereri și răspunsuri între client și server.

Se știe că HTTP și serverele web sunt ambii apatrizi. Prin urmare, singura modalitate de a menține starea utilizatorului este prin utilizarea tehnologiilor care implementează urmărirea sesiunii.
Urmărirea sesiunii în servlets poate fi implementată printr-o serie de metode, cookie-urile fiind una dintre ele. Cu toate acestea, au mai multe dezavantaje:



  • Numai informațiile textuale pot fi păstrate de aceștia.
  • Dacă cookie-urile sunt dezactivate de către un utilizator, aplicația web nu le poate folosi.
  • Nu mai mult de 4 KB de date pot fi conținute de un singur cookie.
  • O altă modalitate de a implementa urmărirea sesiunii este prin crearea sesiunilor cu ID-uri de sesiune unice pentru fiecare utilizator dintr-un servlet Java.

Continuăm cu acest articol despre Sesiune în Java

Interfață de sesiune Http

Servletele din Java oferă o interfață cunoscută sub numele de „HttpSessionInterface”.
Acestea constau din diverse metode, dintre care unele sunt discutate mai jos:

  • public HttpSession getSession (boolean create): Această metodă obține sesiunea asociată cu cererea. În cazul în care nu este disponibil sau nu este prezent, se creează o nouă sesiune care se bazează pe argumentul boolean specificat.
  • public String getId (): ID-ul sesiunii unic este returnat prin această metodă.
  • public long getCreationTime (): Ora la care a fost creată sesiunea este returnată prin această metodă. Se măsoară în milisecunde.
  • public long getLastAccessedTime (): Ora când ultima sesiune a fost accesată este returnată prin această metodă. Se măsoară în milisecunde.
  • public void invalidate (): O sesiune poate fi invalidată utilizând această metodă.

Exemplu:
În exemplul dat mai jos, am folosit metoda getAttribute () și setAttribute () a interfeței HttpSession.



Continuăm cu primul exemplu din acest articol Session In Java

index.html

Nume utilizator, parola:

Continuăm cu al doilea exemplu

S ervlet1.java

import java.io. * import javax.servlet. * import javax.servlet.http. * public class Servlet1 extinde HttpServlet {public void doGet (HttpServletRequest request, HttpServletResponse response) {try {response.setContentType ('text / html') PrintWriter pwriter = response.getWriter () Numele șirului = request.getParameter ('userName') Parola șirului = request.getParameter ('userPassword') pwriter.print ('Bun venit' + numele) pwriter.print ('Iată parola:' + parolă) HttpSession session = request.getSession () session.setAttribute ('nume de utilizator', nume) session.setAttribute ('uspass', parolă) pwriter.print (' Vezi detalii ') pwriter.close ()} catch (Exception exp) {System.out.println (exp)}}

Continuăm cu al treilea exemplu

ce este filtrul contextual în tablou

Servlet2.java

import java.io. * import javax.servlet. * import javax.servlet.http. * public class Servlet2 extinde 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 ('Name : '+ MyName +' Pass: '+ myPass) pwriter.close ()} catch (Exception exp) {System.out.println (exp)}}}

Continuăm cu al patrulea exemplu în acest articol din sesiunea în Java

web.xml

MyServlet1 Servlet1 MyServlet1 / loginform MyServlet2 Servlet2 MyServlet2 / Bun venit

Există diferite avantaje și dezavantaje ale acestei interfețe, așa cum sunt enumerate mai jos:

Sesiune în Java

Avantaje:

  • Tot felul de obiecte, cum ar fi baza de date și textul pot fi stocate într-o sesiune.
  • Sesiunile sunt sigure.

Continuăm cu dezavantaje

Dezavantaje:

  • Deoarece obiectul sesiunii este stocat pe un server, există performanțe generale.
  • Serializarea și de-serializarea conduc, de asemenea, la cheltuieli generale.

Este extrem de avantajos să utilizați HttpSessionInterface pentru a realiza urmărirea sesiunii.

Astfel am ajuns la sfârșitul acestui articol despre „Sesiune în Java”. Dacă doriți să aflați mai multe, consultați de Edureka, o companie de învățare online de încredere. Cursul de formare și certificare Java J2EE și SOA al Edureka este conceput pentru a vă instrui atât pentru conceptele Java de bază, cât și pentru cele avansate, împreună cu diverse cadre Java, cum ar fi Hibernate & Spring.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui blog și vă vom răspunde cât mai curând posibil.