Service

来源:互联网 发布:java程序员进阶路线图 编辑:程序博客网 时间:2024/06/10 11:32

servlet概念

Servlet  API---类和接口的集合

Servlet是使用Java Servlet应用程序设计接口及相关类和方法的Java程序。它在Web服务器上或应用服务器上运行并扩展了该服务器的能力。Servlet装入Web服务器并在Web服务器内执行

Servlet是以Java技术为基础的服务器端应用程序

针对同一个Servlet,Servlet容器会在第一次收到http请求时建立一个Servlet实例,然后启动一个线程。第二次收到http请求时,Servlet容器无须建立相同的Servlet实例,而是启动第二个线程来服务客户端请求。所以多线程方式不但可以提高Web应用程序的执行效率,也可以降低Web服务器的系统负担

可移植性好:Servlet是用Java语言编写的,具有完善的Servlet API标准,企业编写的Servlet程序,可以轻松地移植到其他服务器中。

执行效率高:Servlet请求到来的时候激活Servlet,请求处理完,等待新的请求,新的请求将生成一个线程而不是进程。

使用方便:Servlet可以轻松地处理HTML表单数据,并读取和设置HTTP头,处理Cookie,跟踪会话

手动编写一个Servlet类需要以下几步。

创建FirstServlet类,此类继承自HttpServlet。

重写doGet()和doPost()方法中的一个。

定义初始化的init()方法,此方法用于获取资源文件里面的初始化信息。

定义清除资源的destroy()方法。

注册和运行Servlet。

在代码中,Servlet生命周期由接口javax.servlet.Servlet定义。所有的Servlet必须直接或间接地实现javax.servlet.Servlet接口,这样才能在Servlet容器中运行。Servlet提供service方法、init方法和destroy方法等。在Servlet的生命周期中,运行javax.servlet.Servlet接口中定义的这些方法,方法会在特定时间按照一定的顺序被调用

 

Serviet生命周期

 

 

不存在Servlet实例---à容器转载Servlet-à创建Servlet实例-à初始化Servlet调用init方法-à调用service方法对应的Servlet的Service的方法-à结束Servlet调用destroy方法

 

Servlet容器负责实例化和加载Servlet,这个过程可以在Servlet容器加载时执行,可以在Servlet响应请求时执行,也可以在两者之间的任何时候执行。Servlet 容器加载完Servlet之后,首先必须初始化它。初始化时Servlet调用init()方法,该方法可以以一个ServletConfig类型的引用为参数,该参数可以让Servlet从部署描述符文件中读取一些键值对形式的参数值,以初始化这些数据,ServletConfig对象的引用还可以让Servlet接受ServletContext对象。

 

Servlet被初始化以后,就处于能响应请求的就绪状态。每个Servlet都有一个请求的Servlet Request对象和响应的Servlet Response对象

Servlet还可以实现ServletRequest和ServletResponse接口。ServletRequest接口可以让Servlet获取客户端请求中的参数,如request信息、协议类型等

•         Servlet可以从ServletInputStream流中读取request数据。ServletResponse接口允许Servlet设置response headers和status codes。实现这个接口可以使Servlet能访问ServletOutputStream流,用来向客户端返回数据。

     

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击