Servlet API 详解

简介: Servlet API 详解

一、HttpServlet

 

① init() 方法

在 Servlet 的生命期中,仅执行一次 init() 方法。它是在服务器装入 Servlet 时执行(也就是HttpServlet实例化之后)。 无论有多少客户机访问 Servlet,都不会重复执行 init() 。

② service() 方法


service() 方法是 Servlet 的核心。每当一个客户请求一个HttpServlet 对象,该对象的service() 方法就要被调用,而且传递给这个方法一个"请求"(ServletRequest)对象和一个"响应"(ServletResponse)对象作为参数。 在 HttpServlet 中已存在 service() 方法。缺省的服务功能是调用与 HTTP 请求的方法相应的 do 功能。

③ destroy() 方法

destroy() 方法仅执行一次,即在服务器停止执行该方法。有可能会调用不到,比如杀进程或者电脑直接断电。

④ doGet()方法

收到GET请求的时候调用(由service方法调用,Tomcat收到请求,会先调用Service,再调用doxxx,实际开发中很少重写Service,一般重新doxxx方法即可)

⑤ doPost()方法

收到POST请求的时候调用(由service方法调用)

⑥ doPut/deDelete/doOptions

收到其他请求的时候调用 (由service方法调用)


常见面试题: 请你谈谈Servlet的生命周期

二、Http请求:HttpServletRequest

1. 获取请求行信息


image.png


2. 获取请求头信息(header信息)


image.png


3. 获取 form 表单的数据(queryString或者body信息)


image.png

三、Http响应:HttpServletResponse

1. 设置响应行的信息

返回值类型 方法 描述
void setStatus(int status)

用于设置 HTTP 响应消息的状态码,并生成响应状态行。


2. 设置响应头信息

image.png


3. 设置响应体信息


返回值类型 方法 描述
void sendRedirect 重定向URL
utputStream getOutputStream() 向body中写入二进制格式数据
PrintWriter getWriter() 向body中写入  文本 格式数据


四、大致总结


0b17a805c8204a66b3b46a2ac38a8c01.png


相关文章
|
10月前
|
API
05JavaWeb基础 - Servlet的相关API
05JavaWeb基础 - Servlet的相关API
27 0
|
2月前
|
API
获得servlet相关API,获得请求头和cookie-spring23
获得servlet相关API,获得请求头和cookie-spring23
|
3月前
|
JSON Java 应用服务中间件
|
JSON 应用服务中间件 API
【计算机网络】Servlet API重点知识汇总
【计算机网络】Servlet API重点知识汇总
|
网络协议 应用服务中间件 API
Servlet的常用Api—HttpServletResponse
Servlet的常用Api—HttpServletResponse
106 0
Servlet的常用Api—HttpServletResponse
|
JSON 编解码 前端开发
【JavaEE】Servlet的API详解
【JavaEE】Servlet的API详解
79 0
|
API
java202304java学习笔记第六十二天-ssm-获取servlet相关api
java202304java学习笔记第六十二天-ssm-获取servlet相关api
68 0
|
API
java202304java学习笔记第六十二天-ssm-获取servlet相关api
java202304java学习笔记第六十二天-ssm-获取servlet相关api
79 0
|
应用服务中间件 API 容器
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
108 0
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
|
Java API 容器
Servlet进阶API
  对于每个Servlet的设置信息,web容器会为其生成一个ServletConfig作为代表对象,可以从该对象取得Servlet初始参数,以及代表整个web应用程序的ServletContext对象。
871 0