栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA-Servlet

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA-Servlet

Servlet是什么?

Servlet(Server+ applet):表示服务器端小程序。

狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。

Servlet是sun公司提供的一门用于开发动态web资源的技术,在服务器端运行。它可以接收客户端发送过来的请求,并响应数据给客户端。

注:编写 Servlet 代码需要遵循 Java 语法,一个 Servlet 程序其实就是一个按照 Servlet 规范编写的 Java 类。Servlet 程序需要先编译成字节码文件(.class文件),然后再部署到服务器运行。

继承树:

Servlet的职责

①和前端(html/jsp)后台(java)的交互

    客户端发送请求至服务器端;服务器将请求信息发送至 Servlet;Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;服务器将响应返回给客户端。

②控制跳转

    请求转发:转发是在服务器端起作用的,当使用 forward() 方法时,Servlet 容器传递HTTP请求,从当前的 Servlet 或 JSP,此过程仍然在 request 的作用范围内。转发后,浏览器的地址栏内容不变。请求重定向:重定向是在用户的浏览器端工作的,是 Servlet 对浏览器做出响应后,浏览器再次发送一个新的请求。重定向后,浏览器的地址栏内容发生变化。
Servlet的创建方式

implements Servlet(实现Servlet接口)extends abstract GenericServlet类,覆盖service方法extends HttpServlet,覆盖doGet()/doPost()

注:前两种了解,第三种是重点

Servlet的生命周期

①客户端请求 Servlet,加载 Servlet 类到内存;

②实例化(调用构造器方法)后立即调用init()方法初始化该 Servlet;

servlet对象只创建一次 (①②只执行一次)

当在web.xml中配置标签时,标记容器是否在启动的时候就加载这个servlet。

当值为0或者大于0时,表示容器在应用启动时就加载这个servlet;当是一个负数时或者没有配置此标签时,则指示容器在该servlet被请求时才加载。正数的值越小,启动该servlet的优先级越高。

③执行service() 方法

​ 根据请求方法不同调用doGet() 或者 doPost()(此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions()、destroy())。,每次访问都会调用service()。

④执行destroy()销毁方法

​ 当 Server 不再需要 Servlet 时(一般当 Server 关闭时),Server 调用 Servlet 的destroy()方法。

​ 注:destroy()由容器(tomcat)调用,容器由JVM销毁

图示:

由JVM销毁

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/721322.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号