1、对于Tomcat来说,它会将客户端传来的参数放在一个Hashtable中,该Hashtable的定义是:
2、某些Servlet在web.xml文件中只有<servlet>元素而没有<servlet-mapping>元素,这样我们就无法通过url地址的方式访问这个Servlet了,这种Servlet通常会在<servlet>元素中配置一个<load-on-startup>子元素,让容器在启动的时候自动加载该Servlet,并且调用其init方法完成一些全局性的初始化工作。
3、Servlet的多线程同步问题:Servlet本身是单实例的,这样当有多个用户访问某个Servlet时,会访问唯一的Servlet实例中的成员变量,如果对成员变量进行写入操作,那就会导致Servlet的多线程问题,即数据不一致。
4、解决Servlet同步问题的最好方案:去除实例变量,使用局部变量。
5、Session的运行机制
6、Servlet过滤器
1)Servlet过滤器是在Java Servlet规范2.3中定义的,它能够对Servlet容器的请求和响应对象进行检查和修改。
2)Servlet过滤器本身并不生成请求和响应对象,它只提供过滤作用。
3)Servlet过滤器能够在Servlet被调用之前检查Request对象,修改Request Header和Request内容;
4)在Servlet被调用之后检查Response对象,修改Response Header和Response内容。Servlet过滤器负责过滤的Web组件可以是Servlet、JSP或HTML文件。
7、Servlet过滤器的过滤过程
8、Filter
9、过滤器的链式请求处理过程(FilterChain)