Servlet ---- 接口

一、Servlet与Applet有以下一些共同点:
  1. 都不是独立的应用程序,都没有main()方法
  2. 都不是由用户或程序员直接调用 ,而是生存在容器中,由容器管理
  3. 都有生命周期,都包含了init()初始化方法和destroy()销毁方法

二、编写Servlet类的方法有以下几种

         1、继承 javax.servlet.Servlet 接口,该接口定义了5个方法

  • public void init(ServletConfig config) throws ServletException
-----在Servlet实例化后,Servlet容器会调用init()方法来初始化该对象。Servlet容器通过ServletConfig参数对象向Servlet传递配置信息(web.xml)
  • public void service(ServletRequest req,ServletResponse res)  throws ServletException, IOException
-----Servlet容器调用service()方法来处理客户端的请求,ServletRequest和ServletResponse对象当客户请求到来时,容器自动创建用于封闭响应数据
  • public void destroy()
-----此方法调用之后,容器会释放这个Servlet对象,实现此方法时一般不作任何更改
  • public ServletConfig getServletConfig()
-----该方法返回容器调用init()方法时传递给Servlet对象的ServletConfig对象
  • public String getServletInfo()
-----返回String,其中包括关于Servlet的信息,如作者、版本等,此方法很少用,返回null即可

        2、继承抽象类GenericServlet(通用Servlet),GenericServlet类定义了一个通用的、不依赖于具体协议的Servlet,它给出了除service()方法外的其他4个方法的简单实现,GenericServlet中定义了两个重载的init()方法
  • public void init(ServletConfig config) throws ServletException
-----此方法是Servlet接口中init()方法的实现
  • public void init() throws ServletException
-----实例化GenericServlet对象时,先调用带参数的init(),再调用不带参数的init()

        3、继承HttpServlet

-----客户端大多是通过HTTP协议访问服务嚣端,故所编写的Servlet也主要是应用于HTTP,此类继承自GenericServlet类,用于创建适合Web站点的Servlet,此类提供了两个重载的service()方法
  •  public void service(ServletRequest req,ServletResponse res) throws ServletException,java.io.IOException
-----此方法是GenericServlet类中service()的实现,在这个方法中首先将req和res对象转换为HttpServletRequest和HttpServletResponse类型,然后调用下面的service()
  • protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException,java.io.IOException
-----对客户端请求进行处理,在这个方法中首先调用HttpServletRequest对象的getMethod()方法获取HTTP请求方法的名字,根据方法类型调用相应的doXxx()方法
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值