Servlet是独立于操作系统平台和网络传输协议的服务器端的Java应用程序。Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
在上图中,可以大概理清Servlet类、接口之间的关系。用语言描述,Servlet接口依赖于ServletRequest、ServletConfig、ServletResponse接口。GenericServlet抽象类实现了Servlet接口,HttpServlet抽象类直接继承了GenericServlet抽象类。HttpServlet又依赖于HttpServletRequest和HttpServletReponse接口。而这两者又分别直接继承了ServletRequest接口和ServletReponse接口。
public abstract class GenericServlet implements Servlet, ServletConfig, Serializable;
// GenericServlet抽象类public abstract class HttpServlet extends GenericServlet implements Serializable
// HttpServlet抽象类public interface HttpServletRequest extends ServletRequest
//HttpServletRequest接口public interface HttpServletResponse extends ServletResponse
//HttpServletResponse接口
Servlet接口依赖于ServletRequest、ServletConfig、ServletResponse接口实现,他包含有5个基本的方法,分别是:
public interface Servlet {void init(ServletConfig var1) throws ServletException; //初始化配置ServletConfig getServletConfig(); //获取配置信息void service(ServletRequest var1, ServletResponse var2) throws ServletException, IOException; //负责处理请求,给出响应String getServletInfo(); //获取Servlet文本化信息void destroy(); //回收资源
}
在Servlet接口运行的阶段,每一个Servlet只会创建一个实例对象,对每一次浏览器的请求,服务器产生一个线程,调用service方法,重新创建相应的request对象和response对象。
Servlet是有生命周期的,当Init()第一次被请求时,Servlet容器就会开始调用这个方法来初始化一个Servlet对象出来,但是这个方法在后续请求中不会在被Servlet容器调用。第一次请求service()时,Servlet容器会先调用init( )方法初始化一个Servlet对象出来,然后会调用它的service( )方法进行工作,但在后续的请求中,Servlet容器只会调用service方法了。当要销毁Servlet时,Servlet容器就会调用destory(),至此完成了Servlet的一个生命周期。
结语:本文章目的是理清Servlet类、接口之间的关系和简单介绍Servlet接口,没有具体阐述类和接口中的方法。
本文发布于:2024-01-28 04:52:55,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063887814922.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |