Web容器通过调用各种生命周期方法管理servlet。这些方法在Serlet API中定义。Serlet API是一个可用于开发servlet的类和接口的集合。这些类和接口在javax.servlet和javax.servlet.http包中封装。
Servlet接口时servlet类层次结构的根接口。所有servlet都需要直接或间接地实现Servlet接口。Servlet API的GenericServlet类实现Servlet接口。除Servlet接口外,GernericServlet类还实现Servlet API的ServletConfig接口和标准java.io包的Serializable接口。Web容器用SerletConfig接口的对象在配置信息初始化时将配置信息传送给servlet。
要开发使用HTTP通信的servlet,需要在servlet中扩展HttpServlet类。HttpServlet类扩展了GenericServlet类,并提供了内置HTTP功能。例如,HttpServlet类提供了使servlet能够处理通过特定HTTP方法收到的客户机请求的方法。
下图显示了javax.servlet和javax.servlet.http包中接口和类层次结构的高层设计。
javax.servlet.Servlet接口
javax.servlet包的Servlet接口定义了Web容器管理Servlet生命周期需要调用的方法。
下表列出了javax.servlet.Servlet接口的各种方法。
方法 | 描述 |
---|---|
public void destroy | Web容器在将servlet实例从服务中删除之前调用destroy( )方法。 |
public ServletConfig getServletConfig( ) | 此方法返回包含初始化参数等配置信息的ServletConfig对象,以便初始化servlet。 |
public String getServletInfo( ) | 此方法返回包含作者、版本、版权等servlet相关信息的字符串。 |
public void init ( Servletinfo ) throws ServletException | Web容器创建servlet实例后调用此方法。 |
javax.servlet.ServletConfig接口
servlet初始化期间,通过Web容器实现javax.servlet.ServletConfig接口,以便将配置信息传送给servlet。Web容器通过将ServletConfig类的对象传送至servlet的init()方法来初始化该servlet。ServletConfig对象包含初始化信息并提供对ServletConfig对象的访问。
初始化参数都是名称 - 值对,用于向servlet传送信息。例如,可以指定一个JDBC URL作为servlet的初始化参数。servlet初始化时,可利用该URL值获取数据库连接。ServletContext接口的对象使servlet能够与托管该servlet的Web容器通信。
下表列出了javax.servlet.ServletConfig接口的一些方法。
方法 | 描述 |
---|---|
public Stri |