Що таке getSession false і getSession true в Java?

0 Comments

Виклик getSession() і getSession(true) функціонально однакові: отримати поточний сеанс, а якщо він ще не існує, створити його. Однак виклик getSession(false) повертає поточний сеанс, а якщо він ще не існує, повертає значення null. 16 січня 2024 р.

getSession(); getSession() повертає дійсний об’єкт сеансу, пов’язаний із запитом, ідентифікований у файлі cookie сеансу, інкапсульованому в об’єкті запиту. Виклик методу без аргументів створює сеанс, якщо такий не існує, пов’язаний із запитом.

getSession. Повертає поточний HttpSession, пов’язаний із цим запитом або, якщо поточного сеансу немає і create має значення true, повертає новий сеанс. Якщо create має значення false і запит не має дійсного HttpSession, цей метод повертає null.

Об’єкт HttpSession є функцією HttpRequest (ви можете отримати його лише за допомогою методу req. getSession), і його копія дійсна лише протягом терміну служби методу сервлета або файлу JSP. Ви не можете кешувати об’єкт HttpSession і посилатися на нього поза межами сервлета або файлу JSP.

Об'єкт сеансу є однопотоковий контекст для створення та споживання повідомлень. Хоча він може виділяти ресурси постачальника за межами віртуальної машини Java (JVM), він вважається легким об’єктом JMS. Сеанс служить кільком цілям: це фабрика для виробників і споживачів повідомлень.

getSession(true) поверне поточний сеанс. Якщо поточний сеанс не існує, буде створено новий сеанс. Отже, в основному між обома методами немає різниці. запит. getSession(false) поверне поточний сеанс, якщо поточний сеанс існує.