Servlet常用接口:
1、Servlet实现相关:
(1) Servlet 接口:主要定义了servlet的生命周期方法,它定义了以下方法:
l init(ServletConfig config) 用于初始化Servlet
l destroy() 销毁Servlet
l getServletInfo() 获取Servlet的信息
l getServletConfig() 获得Servlet配置相关的信息
l service(ServletRequest req, ServletResponse res) 运行应用程序的逻辑入口点。ServletRequest表示客户端的请求信息;ServletResponse表示对客户端的响应。
(2) GenericServlet抽象类:为servlet提供了一般的实现(包括实现了servlet和ServletConfig两个接口),保存了容器通过init方法传递给servlet的一个ServletConfig类型的重要对象。
(3) HttpServlet抽象类:为处理http请求的servlet提供了一般实现,主要是定义和实现了若干service方法。HttpServlet的子类必须实现以下方法中的一个:
l doGet()
l doPost()
l doPut()
l doDelete()
l init()和destroy()
l getServletInfo()
2、Servlet配置相关:
(4) ServletConfig接口:为servlet提供了使用容器服务的若干重要对象和方法。主要方法有以下几个:
l getInitParameter(String name) 返回特定名字的初始化参数。
l getInitParameterNames() 返回所有的初始化参数的名字
l getServletContext() 返回Servlet的上下文对象的引用。
3、Servlet上下文相关:
(5) ServletContext接口:是Servlet的上下文对象,这个对象是在服务器启动时创建的,为servlet提供了使用容器服务的若干重要方法。它的常用的方法:
l getAttribute(String name) 获得ServletContext中名称为name的属性
l getContext(String uripath) 返回给定的uripath的应用的Servlet的上下文
l removeAttribute(String name) 删除名称为name的属性
l setAttribute(String name,Object object) 在ServletContext中设置一个属性,这个属性的名称为name,值为object对象。
4、请求和响应相关
请求和响应相关的接口和类非常多,主要有几下几种:
(6) ServletRequest: 代表了Servlet的请求。它是一个高层接口,HttpServletRequest是它的子接口
(7) ServletResponse: 代表了Servlet的响应。它是一个高层接口,HttpServletResponse是它的子接口
(8) ServletInputStream: Servlet的输入流
(9) ServletOutputStream: Servlet的输出流
(10) ServletRequestWrapper: 是ServletRequest的实现
(11) ServletResponseWrapper: 是ServletResponse的实现
(12) HttpServletRequest: 代表了HTTP的请求
(13) HttpServletResponse: 代表了HTTP的响应
(14) HttpServletRequestWrapper: HttpServletRequest的实现
(15) HttpServletResponseWrapper: HttpServletResponse的实现
5、会话跟踪
(16) HttpSession
6、Servlet协作
(17) RequestDispatcher
7、过滤
(18) Filter
(19) FilterChain
(20) FilterConfig
继承关系:GenericServlet继承了Servlet和ServletConfig接口;HttpServlet继承了GenericServlet;我们写的servlet继承了HttpServlet