httpServletRequest对象、filter、servlet、servlet容器、catalina、tomcat、以及web容器之间的关系

时间:2022-04-20 16:54:20

学习servlet的时候经常感到疑惑

  • HttpServletRequest是服务器创建的?还是servlet容器创建的?

  • 过滤器是服务器创建的?还是servlet容器创建的?

  • serlet容器和tomcat服务器是一回事么?

解答

  •  servlet容器处理servlet和jsp,web容器处理http请求和响应,各司其职,http是跨语言的,比如 apache是web容器,tomcat也是,可以接受请求和返回响应
  • tomcat = servlet容器 + 其他                              容器(container
  • tomcat中的servlet容器有个别名叫 catalina
  • Servlet过滤器能够对Servlet容器的请求和响应对象进行检查和修改,那么肯定实在产生请求对象之后才有的,所以也是servlet容器创建的

  •  建议买本关于tomcat的书看看
  • Apache Tomcat 6.0 官方文档说明的第一句

    • This is the top-level entry point of the documentation bundle for the Apache Tomcat Servlet/JSP container.
    • 译文:这是Apache Tomcat Servlet/JSP container 的文档包*入口点
  •  有一个疑问,servlet,fiter,struts2,strut2的拦截器是否都是在servlet容器中进行的    ? ? 

请求响应流程

  1. 客户端发请求 httpServletRequest对象、filter、servlet、servlet容器、catalina、tomcat、以及web容器之间的关系http://www.baidu.com?name=tom 
  2. web容器(也就是tomcat)接收这个请求
  3. 发送给servlet容器
  4. servlet容器创建servlet
  5. servlet容器创建HttpServletRequest对象给servlet

httpServletRequest对象、filter、servlet、servlet容器、catalina、tomcat、以及web容器之间的关系