目录
当我们刚开始接触某种新东西时,都会像好奇宝宝一样。所以 Servelt 是什么呢?
认识 Servlet ~
在IDEA上搜索 servlet (ctrl + shift + n) 我们可以看到一个只有5个方法的interface! 所以,Servlet其实就是一个接口。
Servlet接口定义的是一套处理网络请求的规范,所有实现servlet的类,都需要实现它那五个方法,其中最主要的是两个方法 init()和destroy(),还有一个处理请求的service()。
Java给的一种规范!就像阿西莫夫的机器人三大定律、行尸走肉里Rick的那三个问题一样,而它:
- 初始化时要做什么
- 销毁时要做什么
- 接受到请求时要做什么
虽说Servlet是一个规范,那实现了Servlet的类也不能处理请求的。我们不会在Servlet中写什么监听8080端口的代码,servlet不会直接和客户端打交道!
那请求是怎么来到servlet呢?它是Servlet容器,比如我们上一篇讲到的Tomcat,同样,如果我们找来到的一个Servlet的'Hello World'教程,里面应该就会让你把Servlet部署到一个容器中,不然你的Servlet就不会起作用了。
所以Tomcat才是与客户端直接打交道的家伙,它监听了端口,请求过来之后,根据url等信息,确定要将请求交给哪个Servlet去处理,然后调用那个Servlet的Service方法,Service方法返回一个response对象,Tomcat再把这个response返回给客户端。
它的生命周期?
Servlet 的生命周期就是 Servlet 从创建到销毁的过程。Servlet 的生命周期由 Servlet 容器管理,主要分为以下 3 个阶段。
- 初始化阶段
- 运行时阶段
- 销毁阶段
如何创建?如何编译和部署?
首先看看它的 Servlet的基本配置和使用https://blog.youkuaiyun.com/zhoucheng05_13/article/details/53350156Servlet 是服务 HTTP 请求并实现 javax.servlet.Servlet 接口的 Java 类。Web 应用程序开发人员通常编写 Servlet 来扩展 javax.servlet.http.HttpServlet,并实现 Servlet 接口的抽象类专门用来处理 HTTP 请求。
Servlet的三种创建方法
- 实现 javax.servlet.Servlet 接口,重写其全部方法。
- 继承 javax.servlet.GenericServlet 抽象类,重写 service() 方法。
- 继承 javax.servlet.http.HttpServlet 抽象类,重写 doGet() 或 doPost() 方法。
Servlet的部署和访问
Servlet的常用类和接口
测试。。。