jsp学习--web监听器

[list=1]
[size=medium][b]1.什么是web监听器[/b][/size]
就是你可以监听你的web应用,监听许多信息的初始化,销毁,增加,修改,删除值等
其实我并不知道监视这些有什么用,书上讲到了,就看一下,水平还不够,不过先把知道掌握了,万一哪天用到,就明白了。


[list]
[b][size=medium][*]ServletContext上下文的监听[/size][/b]
[/list]


要实现2个接口,ServletContextListener,ServletContextAttributeListener


public final class MySerevletContextListener implements ServletContextListener, ServletContextAttributeListener{
private ServletContext context=null;
public void contextInitialized(ServletContextEvent event) {
context=event.getServletContext();
logout("ServletContext被初始化了");

}

public void contextDestroyed(ServletContextEvent event) {
logout("ServletContext被销毁了");
this.context=null;
}

public void attributeAdded(ServletContextAttributeEvent event) {
logout("ServletContext增加了一个属性,名字是:"+event.getName()+"值是:"+event.getValue());
}

public void attributeRemoved(ServletContextAttributeEvent event) {
logout("ServletContext删除了一个属性,名字是:"+event.getName()+"值是:"+event.getValue());
}

public void attributeReplaced(ServletContextAttributeEvent event) {
logout("ServletContext被改变了了某个属性,名字是:"+event.getName()+"值是:"+event.getValue());
}
public void logout(String message) {
PrintWriter out = null;
try {
out = new PrintWriter(new FileWriter("E:\\aaa.txt"));
} catch (IOException e) {
e.printStackTrace();
}
out.println("时间是:"+new Date().toString()+"从监听过滤器里得到以下信息"+message);
out.close();

}
}


在一个jsp里,测试一下,首先要得到ServletContext,然后才能给他增加或者删除参数,怎么得就成了问题,我想着应该有getServletContext的static方法,可以直接得,但是竟然没有,提示只有getServletConfig()和getServletInfo(),有点蒙,结果看人家的代码,就是通过getServletConfig()得到配置的对象config,然后再得ServlerContext。
我太不会变通了,刚刚看过,ServletConfig是配置相关的,而ServletContext上下文就是类似与于整个servlet的全局变量,明显是应该通过Config得吗,就差人家给你写出来了,这都没想到。哎!!

从人家blog里看的,总结以下获得ServlerContext的方法:
方法1:
可以通过ServletConfig接口的getServletContext()方法获得
方法2:
通过GenericServlet抽象类的getServletContext()方法获得,不过这个方法其实也是调用了ServletConfig的getServletContext()方法
在GenericServlet.java中

public ServletConfig getServletConfig() {
return config;
}
public ServletContext getServletContext() {
return getServletConfig().getServletContext();
. }



-------------------------------------------------
开源才是王道
我的MSN:fatcatyycom@hotmail.com与我交流。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值