JSP 概述(三)

JSP 的处理过程&JSP 与其他服务器端脚本语言的比较

1. JSP 的处理过程

当客户端浏览器向服务器发出请求要访问一个 JSP 页面时,服务器根据该请求加载相应的 JSP 页面,并对该页面进行编译,再执行;
JSP 的处理过程如下图:
20230201

  1. 客户端通过浏览器发出请求,在该请求中包含了请求资源的路径,当服务器接收到该请求后就能知道被请求的资源;
  2. 服务器根据接收到用户端请求来加载被请求的 JSP 文件;
  3. Web 服务器中的 JSP 引擎会被加载的 JSP 文件转化为 Servlet;
  4. JSP 引擎将生成的 Servlet 代码编译成 Class 文件;
  5. 服务器执行这个 Class 文件;
  6. 最后服务器将执行结果发送给浏览器进行显示;
    JSP 文件被 JSP 引擎进行转换后,又被编译成 Class 文件,最终由服务器通过执行这个 Class 文件来对客户端的请求进行响应;
    第三步及第四步构成了 JSP 处理过程中的翻译阶段,第五步为请求处理阶段;
    但不是每次请求都需要重复进行这样的处理;
    当服务器第一次接收到对某个页面的请求时,JSP 引擎就开始进行上述的处理过程,将被请求的 JSP 文件编译成 Class 文件;
    在后续对该页面再次进行请求时,若页面没有进行任何改动,服务器只需直接调用 Class 文件执行即可;
    当某个 JSP 页面第一次请求时,会有一些延迟,而再次访问时会感觉快了很多;
    若被请求的页面经过修改,服务器将会重新编译这个软件,再执行;

2. JSP 与其他服务器端脚本语言的比较

常用的服务器端技术有CGI、ASP、PHP、ASP.NET及JSP;

2.1 CGI

CGI(Common Gateway Interface,通用网关接口)是最早用来创建动态网站的一种技术,它能使浏览器与服务器之间产生互动关系;
它允许使用不同的语言来编写适合的 CGI 程序,该程序被放在 Web 服务器上运行;
当客户端发出请求给服务器时,服务器根据客户请求建立一个新的进程来执行指定的 CGI 程序,并将执行结果以网页的类型传输到客户端的浏览器上显示;

2.2 ASP

ASP(Active Server Pages)是一种使用很广泛的开发动态网站的技术;
它通过在页面代码中嵌入 VBScript 或 JavaScript 脚本语言来生成动态的内容,在服务器端必须安装了适当的解释器后,才能通过调用解释器来执行脚本程序,再将执行结果与静态内容部分结合并传送到客户端浏览器上;
对于一些复杂的操作,ASP 能调用存在于后台的 COM 组件来完成,COM 组件无线地扩充了 ASP 的能力;
依赖本地的 COM 组件,使得 ASP 主要用于 Windows 平台中;

2.3 PHP

PHP(Personal Home Page)是一种开发动态网站技术的名称;
PHP 语法类似 C,且混合了 Perl、C++ 及 Java 的一些特性;
它是一种开源的 Web 服务器脚本语言,与 ASP 及 JSP 一样能在页面中加入脚本代码来生成动态内容;
对于一些复杂的操作能封装到函数或类中,在 PHP 中提供了许多已经定义好的函数;

2.4 ASP.NET

ASP.NET(Active Server Pages)是一种建立动态 Web 应用程序的技术,它是 .NET 框架中的一部分,能使用任何 .NET 兼容的语言,如 Visual Basic.NET、C#、J# 等来编写 ASP.NET 应用程序;
这种 ASP.NET 页面(Web Forms)编译后能提供比脚本语言更出色的性能表现;
Web Forms 允许在网页基础上建立强大的窗体;
当建立页面时,能使用 ASP.NET 服务端控件来建立常用的 UI 元素,并将它们编程来完成一般的任务;
这些控件允许开发者使用内建可重用的组件和自定义组件来快速建立 Web From,使代码简单化;
JSP 与其他语言的比较如下表:
20230201

结束语

若文章有帮到你,给个赞,收个藏,欢迎大家留言评论;
若文章有任何错误,欢迎大家指正

猜你喜欢

转载自blog.csdn.net/weixin_43960383/article/details/128875839
今日推荐