Java复习10.Servlet编程

时间:2021-02-07 07:12:43

Java复习10. Servlet编程知识 20131008

前言:

之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面的框架没有学习。这个期间,我掌握的就是把java代码和html代码杂糅在一起的JSP页面,同时还有就是Servlet的简单的知识,创建Servlet返回响应,这里才明白服务器的大概原理,根据客户端的请求URL类型分发到不同的地方。然后处理,之后在使用response返回信息。还有学习一点关于Java中数据库乱接操作的知识和一些JSTL标签知识,还好自己有这一部分的笔记。

Servlet是一种独立于平台和协议的服务端的Java应用程序,利用它可以生成动态的Web页面。它担当Web浏览器或者其他HTTP客户端请求与HTTP Server上的数据库或者应用程序之间的中间层。Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java程序有所不同,Servlet是由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机,在Web容器内执行。

Java Servlet API定义了一个Servlet和Java标准接口,是的Servlet可以跨服务器平台的特性。

1.简单的了解Servlet机制

当客户端发送请求到Server上的时候,服务器将请、请求的信息转发给servlet容器,并且让Servlet建立起服务器返回给客户机的响应。当启动Web服务器或者是客户端第一次请求服务时, 可以自动装入Servlet。装入后,Servlet继续运行,知道客户端发出其他的请求。

         Servlet的功能介绍:

创建并且返回一个包含基于客户端请求性质的动态内容的完整HTML页面;

创建可以其嵌入到现有HTML页面中的一部分HTML页面;

与其他的服务器资源(数据库,Java应用程序)进行通信;

用于多个客户机处理链接,接收多个客户机的输入,并且将结果光波导多个客户机上;

当允许在单链接方式下传送数据的时候,浏览器打开服务器值Applet的新连接,并且将该连接保持在打开状态;

对于特殊的处理采用MIME类型过滤数据,例如图像转换和服务器端包括SSI;

将定制的处理提供给所有服务器的标准例行程序,如Servlet可以修改如何认证用户。

Servlet技术特性:

Servlet是Java对于CGI编程的回答,Servlet程序在服务器端运行,动态的生成Web页面,与传统的CGI和其他类似CGI技术相比,JavaServlet具有更高的效率,容易使用,功能强大,移植性。

高效:每一个请求CGI都要启动一个进程,但是Servlet使用的是一个轻量级的线程;

方便:Servlet提供了大量的使用工具,如自动解析和解码HTML表单数据、读取设置HTTP头,处理cookies信息,跟踪回话Session状态;

功能强大:Servlet于Server直接交互,并且可以共享数据,使用数据库连接池等等

可移植性:ServletAPI 完整的标准规范,前期服务器比较容易;

2.Servlet的声明周期

初始化:Web容器加载并且实例化Servlet实例之后,允许Servlet读取配置资源、初始化资源。

初期请求:对于客户端请求,创建一个请求对象和一个响应对象,服务器调用Servlet的service方法,该方法用于传递请求和响应对象。Service从请求中获取请求信息,并且处理请求,返回响应。

终止:当Server不在需要Servlet的时候或者重新装入Servlet实例的时候,就会调用servlet的destroy

3.