Servlet 教程

Servlet 教程,Servlet 是一个在 Web 服务器上的 JVM 内运行的 java 程序。它用于开发动态 Web 应用。
在我们继续之前,让我们了解什么是动态 Web 应用? Web 应用可以被描述为网页集合(例如网站),当我们称之为动态时,它只是意味着所有用户的网页都不相同,网页将在服务器端生成根据客户端(用户的浏览器)的请求。

静态和动态网页之间的主要区别在于,名称建议的静态页面对于所有用户保持相同,但是动态网页基于来自客户端(用户的浏览器)的请求而改变。例如,考虑一个 Web 应用,它向您显示两个输入字段和添加按钮,当您输入两个数字并单击添加时,它会显示另一个网页,其中包含两个数字的结果,此 Web 应用本质上是动态的,作为第二个网页,显示结果更改基于用户输入,对所有用户都不是静态的。

但是你可以很好地说,一个 servlet 可以通过 CGI(通用网关接口)完成什么,这是真的,但这就是事情 – CGI 有一些限制,如性能,可伸缩性,可重用性等等。我不打算详细讨论 CGI,但我要告诉你,servlet 如何比 CGI 更好。

CGI 的局限性

服务器必须为每个客户端请求创建一个新的 CGI 进程。例如,如果 100 个用户正在访问 Web 应用,则服务器必须创建 100 个 CGI 进程来处理它们发出的请求。由于服务器资源有限,每次为新请求创建新进程都不是一个可行的选择,这会对服务器造成限制,因为服务器无法同时处理超过指定数量的用户。

Servlet 如何比 CGI 更好

每次发出新请求时,CGI 程序都由新进程处理。与 CGI 不同,servlet 程序由可以更高效地并发运行的单独线程处理。

CGI 程序可以用任何编程语言编写,使其主要依赖于平台,因为并非所有编程语言都是独立于平台的。Servlet 仅使用 Java 作为编程语言,使其与平台无关且可移植。使用 java 的另一个好处是 servlet 可以利用 java 的面向对象编程功能。

Servlet 如何工作

正如我上面提到的,对服务器的并发请求由线程处理,这里是相同的图形表示:

Servlet 教程

Servlet 的特点

现在我们已经了解了什么是 servlet 以及它正在被使用的目的。让我们进一步讨论它的主要特征。

1.便携式:

正如我上面提到的,Servlet 使用 Java 作为编程语言,因为 java 是独立于平台的,所以对于 servlet 也是如此。例如,您可以在 Windows 操作系统上创建一个 servlet,用户将 GlassFish 作为 Web 服务器,然后在任何其他操作系统(如 Unix,Linux 和 Apache tomcat Web 服务器)上运行它,此功能使 servlet 可移植,这是 servlet 优于 CGI 的主要优点。

2.高效且可扩展:

一旦 servlet 被部署并加载到 Web 服务器上,它就可以立即开始满足客户端的请求。 Web 服务器使用轻量级线程调用 servlet,因此可以使用 Java 的多线程功能同时通过 servlet 填充多个客户端请求。与服务器必须为每个客户端请求启动新进程的 CGI 相比,servlet 真正高效且可扩展。

3.强大:

通过继承 Java 的主要功能(例如垃圾收集,异常处理,Java 安全管理器等),servlet 不易出现内存管理问题和内存泄漏。这使得 servlet 中的 Web 应用开发安全且不易出错。

教程目录

Servlet API
Servlet 接口解释
Servlet GenericServlet 类
Servlet HttpServlet类
如何在 Eclipse IDE运行 Servlet
Servlet 生命周期
Servlet 的工作原理
Servlet welcome-file-list标签
Servlet load-on-startup标签
Servlet ServletRequest接口
Servlet RequestDispatcher方法
Servlet ServletConfig接口
Servlet ServletContext接口
Servlet ServletResponse接口
Servlet 中的HttpSession
Servlet 中的Cookie
Servlet 面试问答
Java HttpServletMapping
Java Servlet 分页
Java Servlet Weld 教程
Java Servlet 上传文件
Java Servlet 服务 XML
Java Servlet 教程
JSTL forEach 标签
使用 jsGrid 组件
Java Servlet JSON 教程
Java Servlet HTTP 标头
Java Servlet 复选框
Java servlet 发送图像
Java Servlet JQuery 列表
Servlet FreeMarker JdbcTemplate
JQuery 自动补全
Java servlet PDF
Servlet WAR 内读取 CSV 文件
EasyUI datagrid
Java Servlet Restful 客户端
Java Servlet Log4j
Java Servlet 图表
Java ServletConfig
Java Servlet 读取网页
嵌入式 Tomcat

赞(1)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址