Servlets是Java专注于CGI开发的一种技术。运行在Server端,并产生动态的结果。
为什么要使用Servlets 来代替传统的CGI程序呢?
效率:使用传统的CGI 程序,每当收到一个HTTP请求的时候,系统就要启动一个新
的进程来处理这个请求,这样会导致系统性能的降低。而使用Servlets,Java VMs 一直在
运行,当接到一个请求之后Java VMs就创建一个Java线程马上进行处理,如此要比每次
都启动一个新的系统进程效率要高的多。
一、Servlets特点:
功能强大:Servlets 使你可以使用传统CGI不能提供的许多强大功能。你可以使用Java
的API 去完成任何传统CGI 认为困难或不可能的事情。Servlets 可以轻松的实现数据共享
和信息维护,跟踪session和其他功能。
安全:Servlets 运行在Servlets 引擎的限制范围之内,就象可以在Web 浏览器中运行
Applets一样,这样有助于保护Servlets不受威胁。
成本:由于Servlets 可以运行在多个Web 服务器上,这样你就可以使用免费或价格便
宜的服务器,并让他支持Servlets,如此可以大大减少成本开支。
灵活性:由于Servlets 是在Java 平台上运行的,所以由于Java 的跨平台性,Servlets
也可以从一个平台轻易地转移到另一个操作系统平台上,从而大大提高了灵活性。
一个 Servlets 实际上就是一个Java类,需要运行在Java的虚拟机上,使用Servlets引
擎。当某个Servlets 被请求的时候,Servlets 引擎调用该Servlets 并一直运行到这个被调用
的Servlets运行完毕或Servlets引擎被关闭。

Servlet与JavaBean 的区别就是要在WEB-INF中建立一个web.xml,在其中指向自己写
的Servlet,声明名称、类型、路径即可。使用方法和JavaBean 当然也不一样,通过浏览器
直接访问这个Servlet 了。如下:其中第一步,第二步与第1 章的1.2 JSP 环境安装配置一
样,读者可以参考第1章的1.2节

 

(四)、Servlet响应
Servlet 的功能就是接收请求,然后生成相应的响应. 这是通过调用
javax.servlet.http.HttpServletResponse的方法实现的.
1、设置头:你可以设置包含在响应中的头.最重要的头就是Content-Type,它用来告
诉客户端内容的格式,比如:text/html代表html,text/xml 代表XML。
2、设置Cookies 你可以加入cookie到当前的响应中。
3、发送错误响应你可以使用sendError()发送一个HTTP 错误编号。
4、重定向到其他资源你可以使用sendRedirect()定向到另外一个URL。
使用Response API 的一个最重要的原则就是:操作HEADer,Cookie的任何方法必须
在第一次输出缓冲区满且发送到客户端前调用。
(五)、过滤
如果你的Servlet 容器是基于Servlet 规范2.3 或更高,那么你就可以使用
javax.servlet.Filter来对请求和响应作些处理.许多filter聚合在一起,每一个filter都有机会来
对请求和响应做处理。
(六)、Servlet中的Session
HTTP 的一个关键特性就是无状态,因此我们不知道某个请求是否是来自同一用户的请
求,这将会使跨请求的会话变得很艰难。

posted on 2014-09-13 16:28  yuyezhulan  阅读(91)  评论(0编辑  收藏  举报