-
@Listener---HttpSession域中的对象状态的事件监听器
HttpSessionBindingListener
绑定:valueBound方法
解除绑定:valueUnbound方法
HttpSessionActivationListener
钝化:sessionWillPassivate方法
活化:sessionDidActivate方法查看全部 -
小知识点:
request的getAttribute()和getParameter()区别:
request.getAttribute()只能通过 request.setAttribute("name",参数)来获取;
reques.getParameter()则通过URL参数,或前链接页面关系的参数来获取查看全部 -
@Listener---监听器对象的属性的事件监听器
ServletContextAttributeListener
HttpSessionAttributeListener
ServletRequestAttributeListener查看全部 -
@Listener---ServletRequest的事件监听器
创建和销毁:
一个ServletRequest可以注册多个ServletRequestListener接口。有两个事件处理方法:
requestInitialized方法:
public void requestInitialized(ServletRequestEvent sre)
request创建时调用,获取ServletRequest对象和传递的参数。
requestDestroyed方法:
ublic void requestDestroyed(ServletRequestEvent sre)
request销毁时调用
主要用途:
读取参数
记录访问历史
request监听的是用户的每一个访问请求。查看全部 -
@Listener---HttpSession的事件监听器
创建和销毁:
实现HttpSessionListener接口用于监听它的创建和销毁事件
一个HttpSession可以注册多个HttpSessionListener接口,
一个web应用中可以有多个HttpSession对象 。
有两个事件处理方法:
sessionCreated方法:
public void sessionCreated(HttpSessionEvent se)
session创建时调用
sessionDestroyed方法:
public void sessionDestroyed(HttpSessionEvent se)
session销毁时调用
主要用途:
统计在线人数
记录访问日志,记录访问时间、访问的ip
/**
* 销毁session
* 1.关闭服务器
* 2.关闭浏览器
* 3.不关闭浏览器,session超时
*/
不关闭浏览器,session超时
可以在web.xml配置session超时的时间<session-config> <session-timeout>0</session-timeout> </session-config>
0:session没有超时的限制
1:session超时1分钟后销毁,但是并不是准确的一分钟查看全部 -
@Listener---ServletContext的事件监听器
创建和销毁
实现ServletContextListener接口用于监听它的创建和销毁事件
一个项目中可以有多个ServletContextListener,但是只有一个ServletContext对象。
有两个事件处理方法:
contextInitialized方法:
public void contextInitialized( ServletContextEvent sce )
ServletContext创建时调用,获取ServletContext对象和初始化参数。
contextDestroyed方法:
public void contextDestroyed( ServletContextEvent sce )
ServletContext销毁时调用,数据库链接关闭时释放一些资源,以免过度的占用。主要用途:
定时器
全局属性对象例如:
1.获取ServletContext对象: ServletContext sc = sce.getServletContext();
获取初始化参数:sc.getInitParmeter("参数名称");
初始化参数在web.xml中配置:<context-param> <param-name>initParam</param-name> <param-value>imooc</param-value> </context-param>
2.设置ServletContext属性:sc.setAttribute("name",obj);
然后在其它地方获取getAttribute("name")查看全部 -
@Listener---监听器分类
1.按监听器的对象划分
a 用户监听应用程序环境对象(ServletContext)的事件监听器
b 用于监听用户会话对象(HttpSession)的事件监听器
c 用于监听请求消息对象(ServletRequest)的事件监听器。2.按事件划分
a 监听域对象自身的创建和销毁的事件监听器
b 监听域对象中的属性的增加和删除的事件监听器
c 监听绑定到HttpSession域中的某个对象的状态的事件监听器查看全部 -
@JavaWeb---监听器的启动顺序
优先级:Listener》Filter》Servlet
一个web.xml下可配置多个监听器。
查看全部 -
@Listener---监听器的用法
1.编写java程序
public class FirstListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent sce) { System.out.println("contextInitialized"); } @Override public void contextDestroyed(ServletContextEvent sce) { System.out.println("contextDestroyed"); } }
2.配置web.xml
<listener> <listener-class>onetry.Listener.FirstListener</listener-class> </listener>
查看全部 -
request.getAttributs(); 只能通过request.setAttribute()获取参数值
request.getparameter(); 可以通过URL传参获取参数值
查看全部 -
@Listener---监听器的用途
1,统计在线人数和在线用户。
2,系统启动时加载初始化信息。
3,统计网站访问量。
4,跟Spring结合。查看全部 -
session 钝化机制
查看全部 -
监听器绑定到HttpSession域中的某个对象的状态的事件监听器
查看全部 -
监听域对象中的属性的增加和删除的事件监听器
查看全部 -
ServletRequest的创建与销毁
查看全部
举报