servlet
servlet是web容器最基本的组成单元,http请求是向web服务器请求一种信息资源,而servlet就充当了这种资源的最小单位,servlet可以无限扩展,使用java所有的类库资源,为用户返回文本、图片、音频的各类信息资源。 从程序员的角度看,servlet是一个java类,需要实现javax.servlet.Servlet接口的所有方法,提供一个公开的无参数的构造方法。由web容器来控制它的创建、初始化、提供服务、销毁等。它的各种行为方式通过web.xml文件中来配置。
Servlet接口有3个重要的方法,分别是init(),destroy()和service(),由于Servlet是一个java接口,所以需要加载。
Servlet生命周期分4个阶段:加载,初始化,提供服务和销毁。
加载阶段是将请求的servlet类加载到java虚拟机中,这里需要通过公开的无参的构造方法来实例化,无没有则加载失败,也可以通过<load-on-startup>设置servlet在web容器启动时加载。 这些过程都由web容器来控制,开发者关注最多的是初始化和提供服务两个阶段,在init()方法中,开发者可以获取配置在web.xml中的初始化参数,service()方法会在Servlet请求时调用,处理业务逻辑。
Servlet接口有3个实现类,FacesServlet、GenericServlet、HttpServlet。FacesServlet类一般用于JSF的Servlet,很少使用。GenericServlet是一个抽象类,有除了service()方法外的所有抽象方法的默认实现。HttpServlet最常用,包含在javax.servlet.http.HttpServlet类中。

浙公网安备 33010602011771号