首页 理论教育JavaWeb应用开发:Servlet特点

JavaWeb应用开发:Servlet特点

【摘要】:Servlet 程序在服务器端运行,动态地生成Web 页面。Servlet 之间是可以相互交流的。

Servlet 程序在服务器端运行,动态地生成Web 页面。与传统的CGI 和许多其他类似CGI 的技术相比,Java Servlet 具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资

1.高效

在传统的CGI 中,每个请求都要启动一个新的进程,如果CGI 程序本身的执行时间较短,启动进程所需要的开销很可能超过实际执行时间。而在Servlet 中,每个请求由一个轻量级的Java 线程处理(而不是重量级的操作系统进程)。

在传统CGI 中,如果有N 个并发的对同一CGI 程序的请求,则该CGI 程序的代码在内存中重复装载了N 次;而对于Servlet,处理请求的是N 个线程,只需要一份Servlet类代码。在性能优化方面,Servlet 也比CGI 有着更多的选择,比如缓冲以前的计算结果,保持数据库连接的活动,等等。

2.方便

Servlet 提供了大量的实用工具例程,例如自动解析和解码HTML 表单数据、读取和设置HTTP 头、处理Cookie、跟踪会话状态等。

3.功能强大

在Servlet 中,许多使用传统CGI 程序很难完成的任务都可以轻松地完成。例如,Servlet 能够直接和Web 服务器交互,而普通的CGI 程序不能。Servlet 还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。

Servlet 可以使用Java API 核心的所有功能,这些功能包括Web 和URL 访问、图像处理数据压缩、多线程、JDBC、RMI、序列化对象等。

4.节省投资

不仅有许多廉价甚至免费的Web 服务器可供个人或小规模网站使用,而且对于现有的服务器,如果它不支持Servlet 的话,要加上这部分功能也往往是免费的(或只需要极少的投资)。

5.可移植性(www.chuimin.cn)

因为Servlet 由Java 开发,符合规范定义和广泛接受的API,所以它可以在不同的操作系统平台和不同的应用服务器平台下移植。

6.安全

从几个不同方面为Servlet 的安全提供了保障。首先,它是用Java 编写的,所以它可以使用Java 的安全框架;其次,Servlet API 被实现为类型安全的;另外,容器也会对Servlet 的安全进行管理。在Servlet 安全策略中,既可以使用编程的安全,也可以使用声明性安全。声明性的安全由容器进行统一管理。

7.简洁

Servlet 代码面向对象,在封装方面具有先天的优势。

8.集成

Servlet 和服务器紧密集成,它们可以密切合作完成特定的任务。

9.模块化

每一个Servlet 可以执行一个特定任务,并且可以将它们并在一起工作。Servlet 之间是可以相互交流的。

10.扩展性和灵活性

Servlet 的接口设计得非常精简,使得它有很强的可扩展性。