开发者社区> 前端歌谣> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

16.jsp结构

简介: 16.jsp结构
+关注继续查看

JSP 结构

网络服务器需要一个 JSP 引擎,也就是一个容器来处理 JSP 页面。容器负责截获对 JSP 页面的请求。本教程使用内嵌 JSP 容器的 Apache 来支持 JSP 开发。

JSP 容器与 Web 服务器协同合作,为JSP的正常运行提供必要的运行环境和其他服务,并且能够正确识别专属于 JSP 网页的特殊元素。

下图显示了 JSP 容器和 JSP 文件在 Web 应用中所处的位置。

JSP 处理

以下步骤表明了 Web 服务器是如何使用JSP来创建网页的:

就像其他普通的网页一样,您的浏览器发送一个 HTTP 请求给服务器。

Web 服务器识别出这是一个对 JSP 网页的请求,并且将该请求传递给 JSP 引擎。通过使用 URL或者 .jsp 文件来完成。

JSP 引擎从磁盘中载入 JSP 文件,然后将它们转化为 Servlet。这种转化只是简单地将所有模板文本改用 println() 语句,并且将所有的 JSP 元素转化成 Java 代码。

JSP 引擎将 Servlet 编译成可执行类,并且将原始请求传递给 Servlet 引擎。

Web 服务器的某组件将会调用 Servlet 引擎,然后载入并执行 Servlet 类。在执行过程中,Servlet 产生 HTML 格式的输出并将其内嵌于 HTTP response 中上交给 Web 服务器。

Web 服务器以静态 HTML 网页的形式将 HTTP response 返回到您的浏览器中。

最终,Web 浏览器处理 HTTP response 中动态产生的HTML网页,就好像在处理静态网页一样。

以上提及到的步骤可以用下图来表示:

一般情况下,JSP 引擎会检查 JSP 文件对应的 Servlet 是否已经存在,并且检查 JSP 文件的修改日期是否早于 Servlet。如果 JSP 文件的修改日期早于对应的 Servlet,那么容器就可以确定 JSP 文件没有被修改过并且 Servlet 有效。这使得整个流程与其他脚本语言(比如 PHP)相比要高效快捷一些。

总的来说,JSP 网页就是用另一种方式来编写 Servlet 而不用成为 Java 编程高手。除了解释阶段外,JSP 网页几乎可以被当成一个普通的 Servlet 来对待。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【16. 单链表】
**原因**:在笔试当中,通常可以使用`结构体+指针`的方式实现,链表,但是由于每次都需要`new一个新节点`,所以会导致时间超时,或者可以`直接一次性new出很多节点`,但是这样做就和用`数组模拟链表`差不多了.
12 0
【重温基础】16.JSON对象介绍
【重温基础】16.JSON对象介绍
18 0
C++ 结构体转json
FdogSerialize是一个用于C++序列化的开源库,采用非入侵方式,无需在原有结构体上进行修改,目前支持基础类型,基础类型数组,结构体,以及vector,list,map等数据类型的序列化,支持JSON和XML两种数据格式,支持别名,支持忽略字段,最少三行代码即可完成转换。
404 0
jQuery带闹钟的数字时钟
在线演示 本地下载
791 0
SAP S4表结构之变
SAP S4表结构之变 http://mp.weixin.qq.com/s?__biz=MzA5NTg5OTIzMA==&mid=2651446458&idx=1&sn=becf4569104cec79c1ef62226cc9de8d&c...
3452 0
【转】查询表结构
关于查询表结构 -- 查询非系统数据库 Select name FROM Master.. SysDatabases where dbid>4 -- 选择water数据库下的所有表 use [water] SELECT name FROM sysobjects WHERE xtype = 'U' Or xtype = 'S' -- 选择water数据库下的所有用户表 use
909 0
JS结构
当前页面的JS结构如下:     /* 这是立即执行的方法 */    (function () {         /* 这是初始化表格 */        var init = function () {        };         /* 这是返回当前页的对象 */      ...
470 0
+关注
前端歌谣
csdn账号前端大歌谣/前端小歌谣 微信公众号关注前端小歌谣
2486
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载