1.什么是servlet?
servlet是一种用来扩展web服务器功能的组件规范,早些的web服务器只能用来处理静态资源请求,为了解决这种问题,开发了servlet
2.servlet生命周期?
四个阶段:实例化、初始化、就绪、销毁
①实例化:容器收到请求后,才会创建servlet,如果在在web.XML文件中的<Servlet></Servlet>之间添加<loadon-startup>
1
</loadon-startup>,容器启动时会立即创建servlet;
②初始化:容器创建好servlet请求之后,会立即调用init()方法进行初始化,init()方法只会执行一次,也就是servlet只会初始化一次;
③就绪:容器调用servlet对象的service方法来处理请求,会通过请求类型调用相应的doget()或dopost()方法;
④销毁:容器在删除servlet之前,会调用该对象的destory方法,destory只会执行一次;
3.servlet工作原理?
步骤:
- Web Client 向Servlet容器(Tomcat)发出Http请求
- Servlet容器接收Web Client的请求
- Servlet容器创建一个HttpRequest对象,将Web Client请求的信息封装到这个对象中。
- Servlet容器创建一个HttpResponse对象
- Servlet容器调用HttpServlet对象的service方法,把HttpRequest对象与HttpResponse对象作为参数传给 HttpServlet 对象。
- HttpServlet调用HttpRequest对象的有关方法,获取Http请求信息。
- HttpServlet调用HttpResponse对象的有关方法,生成响应数据。
- Servlet容器把HttpServlet的响应结果传给Web Client。