IT兄弟连 JavaWeb教程 过滤器与监听器经典面试题

1.谈谈你对Servlet过滤器的理解

过滤器是Servlet2.3规范中定义的一种小型的、可插入的Web组件。用来拦截Servlet容器的请求和响应过程,以便查看、提取客户端和服务器之间正在交换的数据。过滤器通常是封装了一些功能的Web组件,这些功能很重要,但对于处理客户端请求或发送响应来说不是决定性的。典型的应用包括记录请求和响应的数据、管理会话属性等。

2.简述什么是监听器

监听web应用,监听许多信息的初始化,销毁,增加,修改,删除值等Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前、发生后可以做一些必要的处理。

● Listener是Servlet的监听器。

● 可以监听客户端的请求、服务端的操作等。

● 通过监听器,可以自动激发一些操作,如监听在线用户数量,当增加一个HttpSession时,给在线人数加1。

● 编写监听器需要实现相应的接口。

● 编写完成后在web.xml文件中配置一下,就可以起作用了。

● 可以在不修改现有系统基础上,增加web应用程序生命周期事件的跟踪。

3.过滤器的工作原理?

当客户端发出Web资源的请求时,Web服务器根据应用程序配置文件设置的过滤规则进行检查,若客户请求满足过滤规则,则对客户请求/响应进行拦截,对请求头和请求数据进行检查或改动,并依次通过过滤器链,最后把请求/响应交给请求的Web资源处理。请求信息在过滤器链中可以被修改,也可以根据条件让请求不发往资源处理器,并直接向客户机发回一个响应。当资源处理器完成了对资源的处理后,响应信息将逐级逆向返回。同样在这个过程中,用户可以修改响应信息,从而完成一定的任务。

猜你喜欢

转载自blog.51cto.com/14311187/2404043