写在开始 : 本文存在部分引用, 仅用作个人复习, 大家有需要可以查阅原文链接进行查阅学习!
Tomcat工作机制动画演示
引用地址 : https://blog.csdn.net/qq_19782019/article/details/80292110?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168024297016800182162273%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=168024297016800182162273&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_positive~default-1-80292110-null-null.142v80insert_down1,201v4add_ask,239v2insert_chatgpt&utm_term=servlet&spm=1018.2226.3001.4187
原文链接:https://blog.csdn.net/qq_19782019/article/details/80292110
1. 什么是Servlet
Servlet(Server Applet),全称Java Servlet 。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
Servlet 本质上也是 Java 类,但要遵循 Servlet 规范进行编写,没有 main()方法,它的创建、使用、销毁都由 Servlet 容器进行管理(如 Tomcat)。(言外之意:写自己的类,不用写 main 方法,别人自动调用)
Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器 .
Servlet是JavaEE规范的一种,主要是为了扩展Java作为Web服务的功能,统一接口。由其他内部厂商如tomcat,jetty内部实现web的功能。如一个http请求到来:容器将请求封装为servlet中的HttpServletRequest对象,调用init(),service()等方法输出response,由容器包装为httpresponse返回给客户端的过程。
常见 Servlet容器有很多,如 Tomcat, Jetty, WebLogic Server, WebSphere, JBoss …
2. Servlet的工作模式
- 客户端发送请求至服务器
- 服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器
- 服务器将响应返回客户端
引用链接:https://blog.csdn.net/zhangxia_/article/details/128886023?spm=1001.2014.3001.5502
3. Servlet API 概览
Servlet API 包含以下4个Java包:
1.javax.servlet 其中包含定义servlet和servlet容器之间契约的类和接口。
2.javax.servlet.http 其中包含定义HTTP Servlet 和Servlet容器之间的关系。
3.javax.servlet.annotation 其中包含标注servlet,Filter,Listener的标注。它还为被标注元件定义元数据。
4.javax.servlet.descriptor,其中包含提供程序化登录Web应用程序的配置信息的类型。