在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监听显示人员名单和人数的实现方法。