一 Tomcat运行流程
客户浏览器发出要求访问特定的Servlet的请求
1) Tomcat服务器接收dao客户请求并解析
2)Tomcat服务器创建一个ServletRequest对象,在ServletRequest对象中包含了
客户请求信息即其他关于客户的信息,如请求头请求正文,以及客户端的IP地址等
3) Tomcat服务器创建一个ServletResopnse对象
4) Tomcat服务器调用客户端所请求的Servlet的service'服务方法,并且把
ServletRequest对象和Servletresponse对象作为参数传给该服务方法
5) Servlet从ServletRequest对象中可获取客户的请求信息
6) Servlet利用ServletRepomse对象来生成响应结果
7) Tomcat 服务器把 Servlet 生成的响应结果发送给客户。
二 手写tomcat服务器
1 整体架构和接口
1.1 整体架构和接口
1.2 编写XML文档
1.3 编写IOCloseUtil类
2 DOM4J解析配置文件
2.1 Entity实体类的编写
2.2 Mapping实体类的编写
2.3 解析XML文件
3 反射创建servlet
3.1 编写servletContext对象
解析xml的目的就是为了创建servlet对象,利用从request中请求的url,获取
servlet-name,再用servlet-name获取类的权限顶类名,从而创建servlet对象,而
mapping和Request 两个类中使用的是list集合,将其转化为map集合,存储映射
关系,就有了servletContext类。
3.2 servlet上下文,就是一个容器,用来存储映射关系(定义集合)
3.3 编写WebApp类
调用DOM4返回解析后的集合,遍历集合,转换为map 根据url创建servlet
4 封装Request_metho_surl
4.1 编写server (启动服务 关闭服务)
4.2 编写HTML
4.3 封装Request_method_url
5 类之间的关系