在Java Web應用中,我們經常需要實現監聽某些事件的功能。今天我們就來看一下如何實現監聽并顯示人員名單和人數。
首先,我們需要定義一個監聽器。這個監聽器可以監聽ServletContext的attributeAdded和attributeRemoved事件,即ServletContext中的屬性變化事件。
public class MyListener implements ServletContextAttributeListener { public void attributeAdded(ServletContextAttributeEvent event) { // 監聽到屬性添加事件 if ("person".equals(event.getName())) { ServletContext context = event.getServletContext(); HashSet personSet = (HashSet) context.getAttribute("personSet"); personSet.add(event.getValue()); int personNum = personSet.size(); context.setAttribute("personNum", personNum); } } public void attributeRemoved(ServletContextAttributeEvent event) { // 監聽到屬性刪除事件 if ("person".equals(event.getName())) { ServletContext context = event.getServletContext(); HashSet personSet = (HashSet) context.getAttribute("personSet"); personSet.remove(event.getValue()); int personNum = personSet.size(); context.setAttribute("personNum", personNum); } } }
接下來,在Web.xml中配置該監聽器。
<listener> <listener-class>com.xxx.MyListener</listener-class> </listener>
最后,我們在JSP中使用JSTL標簽庫來展示人員名單和人數。
<c:forEach var="person" items="${personSet}"> ${person}<br/> </c:forEach> 當前人數:${personNum}
以上就是Java Web監聽顯示人員名單和人數的實現方法。