Servlet

开发servlet的三种方式

1.实现servlet接口

init初始化,就是把servlet装载到内存中,只会被调用一次

getServletConfig获取servletConfig对象

service主要的服务方法,放业务逻辑,每次都会被调用

getServletInfo得到servlet配置信息

destroy销毁该servlet,从内存中清除掉

2.继承GenericServlet

只需要重写service抽象方法。

3.继承HttpServlet

首先它是继承自GenericServlet

然后它有很多http相关的方法,post,get,put等待

用户可以根据自己需要来实现这些方法

每个过来的请求都会调用service方法,最后service会根据不用的请求分发到不同的地方去做。

HttpServlet中service方法的源码显示根据不同的请求类型来调用相应的方法。

且HttpServlet把原来的ServletRequest 请求直接强转换成HttpServletRequest然后再去调用它正真的service方法。

public void service(ServletRequest req,ServletResponse res)

throws ServletException,IOException

{

HttpRequest request;

HttpResponse response;

try

{

req = (HttpRequest)request;

res = (HttpResponse)response;

}catch(ClassCastException e)

{

throw new ServletException("non-HTTP request response");

}

service(request,response);

}

Servlet生命周期

1,初始化阶段  调用init()方法

2,响应客户请求阶段  调用service()方法

3,终止阶段  调用destroy()方法

(初始化之前还有加载和实例化servlet步骤。对每个servlet,容器使用Class.forName()对其加载并实例化。因此servlet类有一个不带参数的public构造方法,但一般java编译器添加默认构造方法。)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容