利用java監(jiān)聽器實(shí)現(xiàn)在線人數(shù)統(tǒng)計(jì)
本文實(shí)例為大家分享了java監(jiān)聽器實(shí)現(xiàn)在線人數(shù)統(tǒng)計(jì)的具體代碼,供大家參考,具體內(nèi)容如下
1.在工程中創(chuàng)建監(jiān)聽類SessionListener 并且實(shí)現(xiàn)HttpSessionListener接口,代碼如下
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class SessionListener implements HttpSessionListener {
private static int count = 0;
public void sessionCreated(HttpSessionEvent se) {
count++;
System.out.println("session創(chuàng)建:" + new java.util.Date());
}
public void sessionDestroyed(HttpSessionEvent se) {
count--;
System.out.println("session銷毀:" + new java.util.Date());
}
public static int getCount() {
return count;
}
}
2.配置web.xml
<listener> <description>session監(jiān)聽器</description> <listener-class>com.xxx.SessionListener</listener-class> </listener>
3.在JSP頁面中顯示在線人數(shù)
<%
int count=com.xxx.SessionListener.getCount();
out.println("在線人數(shù):"+count);
%>
注意:servlet中對(duì)session的監(jiān)聽有很多接口,功能很靈活,最常用的是監(jiān)聽Session和Attribute。這里要澄清一下概念,servlet中的session監(jiān)聽和Attribute監(jiān)聽含義有差別,session監(jiān)聽指的不是我們一般所理解的放置一個(gè)session或者銷毀一個(gè)session,這是Attribute監(jiān)聽的功能,因?yàn)閟ervlet中放置session的語法是session.setAttribute(“session名”,要放入的對(duì)象)。而session監(jiān)聽,監(jiān)聽的是HTTP連接,只要有用戶與server連接,就算連接的是一個(gè)空白的jsp頁面,也會(huì)觸發(fā)session事件,所以此處的session實(shí)際上指的是connection,用來統(tǒng)計(jì)當(dāng)前在線用戶數(shù)最合適了。
這種實(shí)現(xiàn)在線人數(shù)統(tǒng)計(jì)的方法是不是很特別,希望這篇文章對(duì)大家的學(xué)習(xí)有所幫助,有所啟發(fā)。
- Javaweb實(shí)現(xiàn)在線人數(shù)統(tǒng)計(jì)代碼實(shí)例
- Javaweb監(jiān)聽器實(shí)例之統(tǒng)計(jì)在線人數(shù)
- java監(jiān)聽器實(shí)現(xiàn)在線人數(shù)統(tǒng)計(jì)
- Java基于servlet監(jiān)聽器實(shí)現(xiàn)在線人數(shù)監(jiān)控功能的方法
- java使用監(jiān)聽器實(shí)現(xiàn)一個(gè)統(tǒng)計(jì)網(wǎng)站在線人數(shù)的示例
- JavaEE在線人數(shù)管理系統(tǒng)
- java web用servlet監(jiān)聽器實(shí)現(xiàn)顯示在線人數(shù)
相關(guān)文章
Spring?BeanDefinition父子關(guān)系示例解析
這篇文章主要為大家介紹了Spring?BeanDefinition父子關(guān)系示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
Java中使用正則表達(dá)式的一個(gè)簡(jiǎn)單例子及常用正則分享
這篇文章主要介紹了Java中使用正則表達(dá)式的一個(gè)簡(jiǎn)單例子及常用正則分享,本文用一個(gè)驗(yàn)證Email的例子講解JAVA中如何使用正則,并羅列了一些常用的正則表達(dá)式,需要的朋友可以參考下2015-06-06
SpringBoot利用dag加速Spring beans初始化的方法示例
本文介紹了利用DAG加速SpringBoot中Spring beans初始化,先解釋了DAG 概念及特性,包括節(jié)點(diǎn)入度出度、拓?fù)渑判虻?接著闡述加速Spring Bean初始化的實(shí)現(xiàn)思路,如識(shí)別依賴關(guān)系構(gòu)建DAG、拓?fù)渑判?、并行初始化Bean及與Spring集成,還展示了相關(guān)代碼工程、測(cè)試結(jié)果及引用2024-12-12
Maven Plugins報(bào)錯(cuò)的解決方法
本文主要介紹了Maven Plugins報(bào)錯(cuò)的解決方法,文中通過圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02
idea2020.1設(shè)置多個(gè)spring boot的service啟動(dòng)的實(shí)現(xiàn)
這篇文章主要介紹了idea2020.1設(shè)置多個(gè)spring boot的service啟動(dòng),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
Java Enum和String及int的相互轉(zhuǎn)化示例
這篇文章主要介紹了Java Enum和String及int的相互轉(zhuǎn)化示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06

