Servlet是Tomcat定义的,在Tomcat架构中一个Servlet就相当于一个请求资源,浏览器发出Http请求,当然,不一定就是Http协议的请求,就拿Http协议的Servlet举例,Tomcat会把请求封装成一个ServletRequest对象,同时会生成一个ServletResponse对象,然后交由Servlet的service处理,service接收一个ServletRequest对象和一个ServletResponse对象,用户(指Servlet的开发者)可以从ServletRequest中获取请求的相应信息,比如说请求路径、请求头信息以及请求参数等等,然后实现自己的业务逻辑,最后把返回结果写到ServletResponse。
这里,Servlet要维持一个Servlet的Config,在这个Config中包含了Servlet的URL,客户端请求这个URL的时候就会把Request分配给这个Servlet,这也被称为路由,由Mapper决定,当服务器启动时,就会去读取web.xml配置文件,在web.xml文件中就有servlet的相关配置。
首先有一个Servlet接口,把Servlet抽象出来,因为可能要实现不同协议的Servlet,方便扩展。在Servlet定义了init,service,destory和getConfig方法,init是在系统加载Servlet后调用的,主要用于初始化一些参数,init需要传入一个ServletConfig对象。在服务器启动时并不会初始化Servlet&