/**
创建SesstionListener类实现 HttpSessionListener 接口 写如下代码
*/
public void sessionCreated(HttpSessionEvent arg0) {
ServletContext application =arg0.getSession().getServletContext();
int count=1;
if(application.getAttribute("count")!=null){
count=(Integer)application.getAttribute("count"); //获取application的值
count++; 这一段就是判断application的值 如果不为空就获取count并且+1 在存到application中
application.setAttribute("count", count);
}
application.setAttribute("count", count);
}
@Override
public void sessionDestroyed(HttpSessionEvent arg0) {
ServletContext application =arg0.getSession().getServletContext();
Integer count=(Integer)application.getAttribute("count");
count--;
application.setAttribute("count", count);
}
/**
配置Eeb.XML文件 如下
*/
<listener>
<listener-class>cn.yct.Listeren.SessionAttListener</listener-class> //包名.类名
</listener>
<listener>
<listener-class>cn.yct.Listeren.SesstionListener</listener-class> //包名.类名
</listener>
/**
创建 CountServlet 继承 HttpServlet 实现她的方法 写如下代码
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
HttpSession session=request.getSession(); //创建Sessions对象
String name=request.getParameter("name"); //获取登录的用户名
if(name!=null){
request.getRequestDispatcher("/Login/success.jsp").forward(request, response); //跳转到登录成功的页面
session.setMaxInactiveInterval(10); //设置session的失效
}
/**
主页面 登录的页面
*/
<form action="CountServlet">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td><input type="submit" value="提交"></td>
</tr>
</table>
</form>