Servlet介绍

Servlet介绍

Servlet也是javaweb的三大组件(Servlet,Filter,Listener)之一,属于动态资源的一种。

Servlet的主要任务就是处理客户端发送的请求,现在我们来具体分析一下Servlet的主要任务:

l  获取请求数据

l  处理请求

l  响应请求

针对Servlet技术的开发,SUN公司提供了一系列的接口和类,其中最重要的是javax.servlet.Servlet接口。下面我们来了解三个和Servlet技术相关的接口和类:

l  javax.servlet.Servlet接口;

l  javax.servlet.GenericServlet类;

l  javax.servlet.http.HttpServlet类;

 

自定义一个Servlet类,有以下三种书写方式:

l 实现javax.servlet.Servlet 接口

l 继承javax.servlet.GenericServlet类

l 继承javax.servlet.http.HttpServlet类

我们最常用到的方式是继承HttpServlet。

Servlet接口

Servlet中的方法大多数都是由服务器(常用的是Tomcat)自动调用,Servlet对象也是有服务器(常用的是Tomcat)来创建。

void  init(ServletConfig  config)

 初始化方法,当服务器创建了Servlet实例,就会立即调用该方法,完成初始化操作,该方法在Servlet的一生中也只被调用一次。

void destroy()

 该方法是销毁方法,在Servlet实例被销毁之前,Tomcat服务器调用该方法,在Servlet的一生中只调用一次。

void   service(ServletRequest req,ServletResponse  res)

该方法是处理请求的方法,当服务器接受到客户端访问Servlet的请求时,就会调用该方法。服务器会创建一个表示客户端请求的ServletRequest对象和一个用于响应客户端的ServletResponse对象作为参数传递给service()方法。在service()方法中,可以通过ServletRequest对象获得客户端的相关请求信息,在对请求进行处理之后,可以调用ServletResponse对象设置响应信息。该方法在Servlet的一生中会被调用多次。

ServletConfig  getServletConfig()

该方法返回一个ServletConfig对象,通过这个对象可以获取到Servlet的相关配置信息。返回的这个对象是由服务器创建,通过init()方法传入到Servlet中,然后再传递给getServletConfig()方法。

String  getServletInfo()

返回一个字符串,其中包含了Servlet的相关信息,例如,作者、版本和版权等信息。

 

和Servlet的生命周期有关,分别是init()、destory()及service()方法,这些方法是由服务器调用。

生命周期可以理解为一个人从出生到死亡这一过程,Servlet的生命周期就是指从Servlet实例被创建,到Servlet实例被销毁这一过程。Servlet实例被创建之后,服务器会调用init()方法对Servlet进行初始化操作,客户端每次请求Servlet,服务器都会调用service()方法进行处理,在Servlet实例被销毁前,服务器会调用destroy方法。

Servlet的生命周期

生命周期方法:

l  init(ServletConfigconfig):出生之后(只执行一次);

l  service(ServletRequestrequest , ServletResponse response):每次请求都会调用;

l  destroy( ):临死之前调用一次

特性:(1)Servlet只会被创建一次,所以是单例的,一个Servlet类只有一个Servlet对象,当然一个web应用中可以存在多个Servlet类;

(2)Servlet是线程不安全的,所以效率比较高。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值