黑马程序员_JAVA 学习笔记26 WEB篇13

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net

req.getSession().getServletContext();
    req.getServletContext();
   这是获得的方法。
@Override
public void init(FilterConfig filterConfig) throws ServletException
{
filterConfig.getServletContext();
    }
   这个也可以获得。
   可以通过这种方式传递一些参数。
  <filter>
     <filter-name>filter1</filter-name>
     <filter-class>Fileter.filter1</filter-class>
     <init-param>
      <param-name>a</param-name>
      <param-value>12</param-value>
     </init-param>
        </filter>
   
   可以通过这种方式获得配置的参数:
@Override
public void init(FilterConfig filterConfig) throws ServletException
{
// TODO Auto-generated method stub
String v = filterConfig.getInitParameter("a");
System.out.println(v);

    }   下面是一个简单的ServletContextListener:
public class contextListener implements ServletContextListener
{
@Override
public void contextDestroyed(ServletContextEvent arg0)
{
System.out.println("contextListener");
}


@Override
public void contextInitialized(ServletContextEvent arg0)
{
System.out.println("contextListener");
}


   }
  <listener>
    <listener-class>listener.contextListener</listener-class>
    </listener>
       
   下面是服务器启动时的结果:
   
   修改完之后的打印结果如下,首先可以看到先是servlet先销毁,然后才是监听器


销毁,然后监听器先启动然后才是servlet初始化。也就是说如同一个栈一样,先进后出



destroy invoked !!!
contextListener
contextListener
invoked init...


下面是一个servletContextAttribute的一个小程序:
public class attribute implements ServletContextAttributeListener
{


@Override
public void attributeAdded(ServletContextAttributeEvent arg0)
{
System.out.println("add");
System.out.println(arg0.getName() + " : " + arg0.getValue());
}


@Override
public void attributeRemoved(ServletContextAttributeEvent arg0)
{
System.out.println("remove");
System.out.println(arg0.getName() + " : " + arg0.getValue());
}


@Override
public void attributeReplaced(ServletContextAttributeEvent arg0)
{
System.out.println("replaced");
System.out.println(arg0.getName() + " : " + arg0.getValue());
}


}


<listener>
    <listener-class>listener.attribute</listener-class>
   </listener>
   


  <body>
    <%
    application.setAttribute("aa", "aa");
   application.setAttribute("aa", "bb");
   application.setAttribute("aa", "cc");
   application.setAttribute("aa", "dd");
   application.removeAttribute("aa");
    
    %>
     </body>
   
   下面是结果:
add
org.apache.jasper.runtime.JspApplicationContextImpl : 


org.apache.jasper.runtime.JspApplicationContextImpl@15b2028
add
aa : aa
replaced
aa : aa
replaced
aa : bb
replaced
aa : cc
remove
   aa : dd
   首先第一个是自动添加的。
   然后下面是我们在jsp中添加的,然后替换时返回的值是被替换的值。移除返回是


移除的值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值