Listener and Filter
2009-09-12 07:52
141 查看
Servlet上下文监听(application):
需要实现ServletContextListener和ServletContextAttributeListener接口
*private ServletContext context = null;
*public void contextInitialized(ServletContextEvent sce)
*public void attributeAdded(ServletContextAttributeEvent scae)
*public void attributeRemoved(ServletContextAttributeEvent scae)
*public void attributeReplaced(ServletContextAttributeEvent scae)
*public void contextDestroyed(ServletContextEvent sce)
监听Http会话(session):
接口们:
HtppSessionActivationListener监听Http会话active、passivate情况
HttpSessionBindingListener监听Http会话中对象的绑定信息
HttpSessionAttribute监听Http会话中属性的设置要求
对请求的监听(request):
ServletRequestListener, ServletRequestAttributeListener
Filter:
EncodingFilter
public class EncodingFilter implements Filter
{
protected FilterConfig filterConfig;
private String targetEncoding = "gb2312";
/**
*初始化过滤器,和一般的Servlet一样,它也可以获得初始参数。
*/
public void init(FilterConfig config) throws ServletException {
this.filterConfig = config;
this.targetEncoding = config.getInitParameter("encoding");
}
/**
*进行过滤处理,这个方法最重要,所有过滤处理的代码都在此实现。
*/
public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain chain)
throws IOException, ServletException {
System.out.println("使用以下方法对请求进行编码:encoding="+targetEncoding);
HttpServletRequest request = (HttpServletRequest)srequest;
request.setCharacterEncoding(targetEncoding);
// 把处理权发送到下一个
chain.doFilter(srequest,sresponse);
}
public void setFilterConfig(final FilterConfig filterConfig)
{
this.filterConfig=filterConfig;
}
//销毁过滤器
public void destroy()
{
this.filterConfig=null;
}
}
需要实现ServletContextListener和ServletContextAttributeListener接口
*private ServletContext context = null;
*public void contextInitialized(ServletContextEvent sce)
*public void attributeAdded(ServletContextAttributeEvent scae)
*public void attributeRemoved(ServletContextAttributeEvent scae)
*public void attributeReplaced(ServletContextAttributeEvent scae)
*public void contextDestroyed(ServletContextEvent sce)
监听Http会话(session):
接口们:
HtppSessionActivationListener监听Http会话active、passivate情况
HttpSessionBindingListener监听Http会话中对象的绑定信息
HttpSessionAttribute监听Http会话中属性的设置要求
对请求的监听(request):
ServletRequestListener, ServletRequestAttributeListener
Filter:
EncodingFilter
public class EncodingFilter implements Filter
{
protected FilterConfig filterConfig;
private String targetEncoding = "gb2312";
/**
*初始化过滤器,和一般的Servlet一样,它也可以获得初始参数。
*/
public void init(FilterConfig config) throws ServletException {
this.filterConfig = config;
this.targetEncoding = config.getInitParameter("encoding");
}
/**
*进行过滤处理,这个方法最重要,所有过滤处理的代码都在此实现。
*/
public void doFilter(ServletRequest srequest, ServletResponse sresponse, FilterChain chain)
throws IOException, ServletException {
System.out.println("使用以下方法对请求进行编码:encoding="+targetEncoding);
HttpServletRequest request = (HttpServletRequest)srequest;
request.setCharacterEncoding(targetEncoding);
// 把处理权发送到下一个
chain.doFilter(srequest,sresponse);
}
public void setFilterConfig(final FilterConfig filterConfig)
{
this.filterConfig=filterConfig;
}
//销毁过滤器
public void destroy()
{
this.filterConfig=null;
}
}
相关文章推荐
- Java Servlet - Listener, Filter and Servlet 初始化顺序
- SpringBoot16 之 Listener and Filter
- SpringBoot16 之 Listener and Filter
- servletFilterAndListener
- web.xml 中的listener、 filter、servlet 加载顺序及其详解
- Listener&Filter
- servlet,listener,filter用法和区别
- web.xml之context-param,listener,filter,servlet加载顺序及其周边
- StrutsPrepareAndExecuteFilter的作用 Struts
- Servlet 使用Filter HttpSessionListener HttpSessionAttributeListener实现webSession管理
- servlet/filter/listener/interceptor区别与联系
- Paticle Filter in MRPT and using tips
- servlet/filter/listener/interceptor区别与联系
- Struts2中的FilterDispatcher和StrutsPrepareAndExecuteFilter的区别
- servlet--filter--interceptor--listener的区别
- ActiveRecord中andFilterWhere使用技巧(自动过滤空字符串)
- servlet/filter/listener/interceptor区别与联系
- Struts2异常解决办法:StrutsPrepareAndExecuteFilter
- servlet,filter, listener, interceptor 区别与联系
- servlet/filter/listener/interceptor区别与联系