Servlet API
来源:互联网 发布:linux shell编程实例 编辑:程序博客网 时间:2024/06/06 23:17
支持servlet的jar包。应该叫servlet-api.jar
你如果编写过servlet就知道要用到HttpServletRequest和HttpServletResponse等对象,这些对象都是要靠这个jar包才能使用的。
如果你安装了Tomcat,这个jar包一般在tomcat安装目录\lib 文件夹下面有,当你把web项目部署到tomcat,会自动加载这个jar包来识别Serlvet一些对象。
- 客户端发送请求至服务器端;
- 服务器将请求信息发送至 Servlet;
- Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;
- 服务器将响应返回给客户端。
生命周期
- 客户端请求该 Servlet;
- 加载 Servlet 类到内存;
- 实例化并调用init()方法初始化该 Servlet;
- service()(根据请求方法不同调用doGet() 或者 doPost(),此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions()、destroy())。
- 加载和实例化 Servlet。这项操作一般是动态执行的。然而,Server 通常会提供一个管理的选项,用于在 Server 启动时强制装载和初始化特定的 Servlet。
Server 创建一个 Servlet的实例
第一个客户端的请求到达 Server
Server 调用 Servlet 的 init() 方法(可配置为 Server 创建 Servlet 实例时调用,在 web.xml 中 标签下配置 标签,配置的值为整型,值越小 Servlet 的启动优先级越高)
一个客户端的请求到达 Server
Server 创建一个请求对象,处理客户端请求
Server 创建一个响应对象,响应客户端请求
Server 激活 Servlet 的 service() 方法,传递请求和响应对象作为参数
service() 方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
service() 方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如 doGet() 或 doPost() 或程序员自己开发的新的方法。
对于更多的客户端请求,Server 创建新的请求和响应对象,仍然激活此 Servlet 的 service() 方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用 init() 方法。一般 Servlet 只初始化一次(只有一个对象),当 Server 不再需要 Servlet 时(一般当 Server 关闭时),Server 调用 Servlet 的 destroy() 方法。
Servlet 的响应可以是下列几种类型:
一个输出流,浏览器根据它的内容类型(如 text/html)进行解释。
一个 HTTP 错误响应,重定向到另一个 URL、servlet、JSP。
javax.servlet 软件包中的相关类为 ServletResponse 和 ServletRequest,而 javax.servlet.http 软件包中的相关类为 HttpServletRequest 和 HttpServletResponse。Servlet 通过这些对象与服务器通信并最终与客户端通信。Servlet 能通过调用”请求”对象的方法获知客户端环境,服务器环境的信息和所有由客户机提供的信息。Servlet 可以调用“响应”对象的方法发送响应,该响应是准备发回客户端的。
- SERVLET API
- servlet api
- Servlet API
- Servlet API
- servlet--api
- servlet--api
- servlet--api
- servlet--api
- servlet API
- servlet API
- Servlet API
- Servlet API
- Servlet API
- Servlet API
- servlet api
- Servlet API
- Servlet API
- servlet API
- spring添加事务控制
- Unicode数据类型(个人笔记)
- Handler倒计时
- 2017年9月反思
- 注解模板
- Servlet API
- kubernetes结合portworx
- java代码执行linux命令
- 欢迎使用CSDN-markdown编辑器
- 剑指offer之六---菲波那切数列
- 如何写一份竞品文档
- 附近距离计算
- Netty
- C 在线编辑器