官方文档翻译:Tomcat Servlet交互简介

╰+哭是因爲堅強的太久メ 2022-05-18 01:15 188阅读 0赞

Tomcat Servlet交互简介
尽管其灵活的配置和与支持技术的互操作性使Apache Tomcat在许多情况下都可以充当Web应用程序服务器,但Tomcat主要是一个Java servlet容器。

利用其Java Servlet和JSP API的实现,Tomcat能够接收来自客户端的请求,动态编译容器管理的Java类来处理相关应用程序Context中指定的请求,并将结果返回给客户端。这种生成动态内容的方法可以实现极其快速,线程化,平台独立的请求处理。

此外,由于Java Servlet规范旨在与所有其他主要Java Web技术进行互操作,因此托管在Tomcat服务器上的servlet能够利用Tomcat可用的任何资源。 Tomcat的嵌套分层XML配置文件允许极其细粒度的资源访问控制,同时保持松散耦合,易于部署以及逻辑,人类可读的架构描述。

在本文中,我们将了解Apache Tomcat如何使用Servlet快速向客户端提供各种动态内容。

厌倦了繁琐,容易出错的部署? Tcat部署包允许您通过单击将多组servlet和Web应用程序部署到多个Tomcat实例。立即试试Tcat吧!

Tomcat如何与Servlet一起使用
Servlet规范的一个关键要求是,它们只需要处理整个数据事务处理过程的某些部分。例如,servlet代码本身永远不会侦听某个端口上的请求,也不会直接与客户端通信,也不负责管理对资源的访问。相反,这些东西由servlet容器Tomcat管理。

这允许servlet在各种环境中重复使用,或者允许彼此异步开发的组件 - 只要没有主要内容,就可以重新考虑连接器以提高效率,而无需对servlet代码本身进行任何更改。做出改变。

Servlet生命周期
作为托管组件,servlet具有生命周期,该生命周期从管理容器加载servlet类开始,通常是响应请求,并在容器通过调用“destroy”方法关闭servlet时结束。这两个点之间的所有servlet活动都被视为其生命周期的一部分。

在Tomcat上运行的典型servlet的生命周期可能如下所示:

Tomcat通过其中一个连接器接收客户端的请求。
Tomcat将此请求映射到适当的Engine以进行处理。这些引擎包含在其他元素中,例如主机和服务器,这些元素限制了Tomcat搜索正确引擎的范围。
一旦请求被映射到适当的servlet,Tomcat就会检查是否已加载该servlet类。如果没有,Tomcat将servlet编译为Java字节码,该字节码可由JVM执行,并创建servlet的实例。
Tomcat通过调用其init方法初始化servlet。 servlet包含能够读取Tomcat配置文件并相应地执行操作的代码,以及声明它可能需要的任何资源,以便Tomcat可以以有序,可管理的方式创建它们。
初始化servlet后,Tomcat可以调用servlet的服务方法来处理请求,该请求将作为响应返回。
在servlet的生命周期中,Tomcat和servlet可以通过使用监听器类进行通信,监听器类监视servlet以进行各种状态更改。 Tomcat可以以各种方式检索和存储这些状态更改,并允许其他servlet访问它们,从而允许状态在单个或多个用户会话的跨度内由给定上下文的各个组件进行维护和访问。实现此功能的一个示例是电子商务应用程序,该应用程序记住用户已添加到购物车的内容并能够将此数据传递到结帐流程。
Tomcat调用servlet的destroy方法来平滑删除servlet。此操作由正在侦听的状态更改触发,或者由传递给Tomcat的外部命令触发,以取消部署servlet的Context或关闭服务器。
组件的组合
使用servlet及其访问的资源以及包含HTML和Java代码混合的静态HTML页面和JSP页面,并且可以使用本机标记库或自定义标记调用servlet方法,Tomcat能够向用户呈现动态,安全,持久的Web应用程序。

发表评论

表情:
评论列表 (有 0 条评论,188人围观)

还没有评论,来说两句吧...

相关阅读