学习技术有时会感觉很枯燥,有时感觉很绕,N多调用,不好理解,但如果能画出图来,就可以一目了然。

图比文字更容易让人接受,并产生深刻印象。一张图可以包含很多东西。

下面一些图来自于网络,偶然间发现,感觉让人忽然明白并回忆起了好多。


Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后:

  • Web服务器首先检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第四步,否则,执行第二步;

  • 装载并创建该Servlet的一个实例对象;

  • 调用Servlet实例对象的的init()方法;

  • 创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的HttpServletResponse对象,然后调用Servlet的service()方法并将请求和相应对象作为参数传递进去;

  • WEB应用程序被停止或重新启动之前,Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的destory()方法。


1.Servet的生命周期(Sevlet被赋予了生命,出生,成长,死去。。。)

容器装载--》Servlet实例化--》init方法初始化--》service方法服务--》destroy方法销毁

wKioL1TcuLbRGy3dAAIsUTxAya8013.jpg



2.Servlet的调用:客户(浏览器)发出请求,到接收到响应,servlet都做了些什么?

请求都提供了哪些信息?面对这些信息Servlet能得到什么?在哪做出Servlet自己的处理?处理完怎么返回给请求者?请求的浏览器需要得到哪些信息?


wKiom1Tct7_R3UdYAAHqMoM09IA773.jpg



3.细化Tomcat服务器对Servlet的使用:

Tomcat根据请求找到相应的Servlet,Servlet接受请求,调用实际的业务处理类处理逻辑,并将结果返回给服务器,最终返回给客户端。

wKiom1Tct77gwtsXAAJrwr-R-nU982.jpg


学习Java会遇到许多框架,感觉许多框架都是围绕着Servlet在做包装,最最基础的还是这些东西。