最近在复习servlet的时候对其的理解整理一下,适合刚入门的新手理解,大牛们勿喷,欢迎指正错误~
servlet是什么?
Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
servlet在web应用程序中的位置如图
具体的理论不在这里过多的介绍,百度一大推,本文为复习的总结
servlet生命周期
说道servlet必须要说到的是其生命周期,理解了servlet的生命周期对以后的运用有很大的帮助,简单的说,servlet的生命周期有三个部分:
1,初始化阶段,此阶段是调用init()方法进行初始化,这个方法在servlet生命周期内只会被调用一次。
2.响应客户请求阶段,此阶段调用service()方法,主要是doGet(),doPost()(当然还有别doXXX())。这个方法在servlet生命周期内可以被多次调用。
3.终止阶段,此阶段调用destory()方法,servlet终止。由JVM垃圾回收器对其回收
注:初始化init()只调用一次,可以多次调用service()方法
下图显示了一个典型的 Servlet 生命周期方案
容器如何找到servlet
servlet配置文件中,请求为http://localhost:8080/appName/sayHi 。sayHi会去找到配置文件中的映射中的url匹配,匹配成功会再继续找到映射中的servlet-name,
mapping中的servlet-name与servlet中的name相同,继而找到class。(注:class要写完整,包名.类名,注意大小写,class写错会导致找不到servlet的类从而报错)
未完待续