Всичко, което трябва да знаете за сесията в Java?



Това ще ви запознае с тема, наречена Session In Java, и в процес ще ви запознае с това как работи управлението на сесии в Java.

Това ще ви запознае с тема, наречена Session In Java, и по време на процеса ще ви запознае с това как работи управлението на сесии . Следните указания ще бъдат обхванати в тази статия,

Нека започнем тогава,





Сесия в Java

Интервалът от време, в който две системи (т.е. клиентът и сървърът) комуникират помежду си, може да се нарече сесия. По-просто казано, сесията е състояние, състоящо се от няколко заявки и отговор между клиента и сървъра.

какви са променливите на екземпляра в java

Известен факт е, че и HTTP, и уеб сървърите са без гражданство. Следователно, единственият начин да се поддържа състоянието на потребителя е чрез използване на технологии, които прилагат проследяване на сесии.
Проследяването на сесии в сървлети може да се реализира по редица методи, като бисквитките са един от тях. Те обаче имат множество недостатъци:



  • Те могат да съхраняват само текстова информация.
  • Ако бисквитките са деактивирани от потребител, уеб приложението не може да ги използва.
  • Една бисквитка може да съдържа не повече от 4kb данни.
  • Друг начин за внедряване на проследяване на сесии е чрез създаване на сесии с уникални идентификатори на сесии за всеки потребител в Java сървлета.

Продължавайки с тази статия за Session в Java

Http интерфейс на сесията

Сервлетите в java предоставят интерфейс, известен като „HttpSessionInterface“.
Те се състоят от различни методи, някои от които са разгледани по-долу:

  • public HttpSession getSession (boolean create): Този метод получава сесията, свързана със заявката. В случай че не е налице или не присъства, се създава нова сесия, която се основава на зададения булев аргумент.
  • public String getId (): Уникалният идентификатор на сесията се връща от този метод.
  • public long getCreationTime (): Времето, когато е създадена сесията, се връща от този метод. Измерва се в милисекунди.
  • public long getLastAccessedTime (): Времето, когато последният достъп до сесията се връща от този метод. Измерва се в милисекунди.
  • public void invalidate (): Сесията може да бъде обезсилена чрез този метод.

Пример:
В примера, даден по-долу, използвахме метода getAttribute () и setAttribute () на интерфейса HttpSession.



Продължавайки с първия пример в тази статия за Session In Java

index.html

Потребителско име: Парола:

Продължавайки с втория пример

С ervlet1.java

import java.io. * import javax.servlet. * import javax.servlet.http. * public class Servlet1 extends HttpServlet {public void doGet (HttpServletRequest request, HttpServletResponse response) {try {response.setContentType ('text / html') Print pwriter = response.getWriter () Име на низа = request.getParameter ('userName') String password = request.getParameter ('userPassword') pwriter.print ('Welcome' + name) pwriter.print ('Ето вашата парола:' + парола) HttpSession сесия = request.getSession () session.setAttribute ('usname', name) session.setAttribute ('uspass', парола) 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 extends HttpServlet {public void doGet (HttpServletRequest request, HttpServletResponse response) {try {response.setContentType ('text / html') Print 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)}}}

Продължавайки с четвъртия пример в тази статия за Session In Java

web.xml

MyServlet1 Servlet1 MyServlet1 / форма за вход MyServlet2 Servlet2 MyServlet2 / Добре дошли

Съществуват различни предимства и недостатъци на този интерфейс, изброени по-долу:

Java какво прави добавя

Сесия в Java

Предимства:

  • Всички видове обекти, като база данни и текст, могат да се съхраняват в сесия.
  • Сесиите са сигурни.

Продължаване с недостатъци

Недостатъци:

cloudera сертифициран администратор за apache hadoop
  • Тъй като обектът на сесията се съхранява на сървър, има допълнителни разходи за производителност.
  • Сериализацията и десериализацията също водят до режийни разходи.

Изключително изгодно е да се използва HttpSessionInterface за постигане на проследяване на сесията.

Така стигнахме до края на тази статия за „Сесия в Java“. Ако искате да научите повече, разгледайте от Edureka, доверена компания за онлайн обучение. Курсът за обучение и сертифициране на Java J2EE и SOA на Edureka е предназначен да ви обучи както за основните, така и за разширените Java концепции, заедно с различни Java рамки като Hibernate & Spring.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на този блог и ние ще се свържем с вас възможно най-скоро.