Конкретный метод заключается в следующем:
1. Java Code <!-Приоритет-самый высокий->
request.getSession (). SetMaxInativeInterVal (1800);/*Sec - единица, 1800 = 60*30, то есть 30 минут*/
2. web.xml <!-Приоритет-самый низкий->
<session-config> <!-Протокол в единицах-> <session-timeout> 30 </session-timeout> </session-config>
3. Веб -сервер Resin.conf, Tomcat,
<session-config> <!-Протокол в единицах-> <session-timeout> 30 </session-timeout> <enable-url-rewriting> false </enable-url-rewriting> </session-config>
Приоритет: 1> 3> 2
Сессия обычно не проходит после перезапуска Tomcat. После закрытия браузера сеанс потерпит неудачу.
В общих системах некоторые операции также могут потребоваться после сбоя сеанса:
(1) контролировать количество пользователей. Когда сеанс не сработает, количество пользователей в системе будет уменьшено на один и т. Д., И управлять количеством пользователей в определенном диапазоне, чтобы обеспечить производительность системы.
(2) Управляйте пользователем, чтобы войти в систему несколько раз. Когда сеанс действителен, если тот же пользователь входит в систему, будет предложено войти в систему. Когда сеанс истекает, вы можете войти в систему без подсказок.
Итак, как вы выполняете серию операций после сбоя сеанса?
Здесь вам нужно использовать слушателя, то есть, когда сеанс терпит неудачу по разным причинам, слушатель может слушать, а затем выполнять программу, определенную в слушателе.
Класс слушателей: httpsessionListener Class, с двумя методами: sessionCreated 和sessionDestroyed
Вы можете унаследовать этот класс, а затем реализовать его отдельно.
SessionCreated относится к методу, выполняемому при создании сеанса
SessionDestroyed относится к методу, выполняемому при сбое сеанса
следующее:
открытый класс OnLineListener реализует httpsessionListener {public void sessionCreated (httpsessionEvent event) {httpsession ses = event.getSession (); String id = ses.getId ()+ses.getCreationTime (); SummerConstant.usermap.put (id, boolean.true); // Добавить пользователь} public void sessionDestroyed (httpsessionEvent event) {httpsession ses = event.getSession (); String id = ses.getId ()+ses.getCreationTime (); синхронизированный (это) {summerConstant.usernum--; // уменьшение по количеству пользователей SummerConstant.usermap.remove (id); // удалить из группы пользователей, группа пользователей - карта}}}Просто объявите этого слушателя в web.xml:
<Learser> <lloader-class> com.demo.system.listener.onlineListener </stirler-class> </sluster>
Выше приведено простой метод использования сеанса для прослушивания количества пользователей. В реальном процессе это может быть гораздо сложнее, чем это.
Например, вам необходимо одновременно реализовать два интерфейса ServletContextListener и HttpsessionListener, а также переписать их методы и т. Д.
Выше приведено метод настройки времени сбоя сеанса Javaweb, введенный вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!