第4章:作为Servlet:请求和响应/4.1 Servlet加载过程
- Servlet加载过程
- 容器tomcat启动读取web.xml文件,加载相关资源
- 读取全局servlet资源,这部分资源所有的servlet对象共用(比如 数据库连接信息 ),形成ServletContext对象
- 读取<servlet>配置段,内容包括:
- 单个servlet配置(比如:邮箱地址、家庭地址),形成ServletConfig对象
- servlet包路径+类名,生成servlet对象
- servlet对应的URL相对路径名,生成XXXX对象
- 容器根据上一步生成的servlet对象,循环调用servlet对象的init(ServletConfig )方法,把ServletConfig传给servlet对象 ,然后servlet对象对象就可以使用配置信息了
- 容器循环等待请求的到来,一旦有请求进来,容器新生成一个线程,同时生成HttpServletRequest对象,并且容器通过servlet对象调用
protected void javax.servlet.http.HttpServlet.service(HttpServletRequest req, HttpServletResponse resp)
方法,里面再调用doGet和doPost等方法 - 其中HttpServletRequest对象可获取的几个重要对象包括
- 上下文信息(也就是全局配置)
public javax.servlet.ServletRequest.ServletContext getServletContext();
- cookies信息
public Cookie[] javax.servlet.http.HttpServletRequest.getCookies();
- 会话信息
public javax.servlet.http.HttpServletRequest.HttpSession getSession();
- 上下文信息(也就是全局配置)
- 以上过程总结如下: