JavaWeb基础知识总结. (4)

wps8BF1.tmp

3 Servlet的helloworld项目 3.1 手动完成

看代码

3.2 MyEclipse完成

看代码

4 Servlet的生命周期 4.1 生命周期相关方法

l Servlet接口中一共是5个方法,其中有三个是生命周期方法。

Ø void init(ServletConfig):这个方法会在Servlet被创建后,马上被调用。只会被调用一次!我们可以把一些初始化工作放到这个方法中,如果没有什么初始化工作要做,那么这个方法就空着就可以了。

² Servlet有两个时间点会被创建:一是在第一次被请求时,会被创建;二是Tomcat启动时被创建,默认是第一种,如果希望在tomcat启动时创建,这需要在web.xml中配置。

Ø void destroy():这个方法会在Servlet被销毁之前被调用。如果你有一些需要释放的资源,可以在这个方法中完成,如果没有那么就让这个方法空着。这个方法也只会被调用一次!

² Servlet轻易不会被销毁,通常会在Tomcat关闭时会被销毁。

Ø void service(ServletRequest,ServletResponse):它会在每次被请求时调用!这个方法会被调用0~N次。

Ø String getServletInfo():它不是生命周期方法,也就是说它不会被tomcat调用。它可以由我们自己来调用,但我们一般也不调用它!你可以返回一个对当前Servlet的说明性字符串。

Ø ServletConfig getServletConfig():这个方法返回的是ServletConfig,这个类型与init()方法的参数类型相同。它对应的是web.xml中的配置信息,即<servlet>

4.2 ServletConfig、ServletContext、ServletRequest、ServletResponse

l ServletRequest:封装了请求信息;

l ServletResposne:用于向客户端响应;

l ServletContext:它可以在多个Servlet中共享数据。

l ServletConfig:它与<servlet>对应!

Ø 在<servlet>中可以配置<init-param>,即初始化参数,可以使用ServletConfig的getInitParameter(String),方法的参数是初始化参数名,方法的返回值是初始化参数值。

Ø getInitParameterNames(),该方法返回一个Enumeration对象,即返回所有初始化参数的名称。

Ø String getServletName(),它返回的是<servlet-name>元素的值

Ø ServletContext getServletContext(),它可以获取Servlet上下文对象。

5 GenericServlet

l 它代理了ServletConfig的所有功能。所有使用ServletConfig才能调用的方法,都可以使用GenericServlet的同名方法来完成!

l 不能覆盖父类的init(ServltConfig)方法,因为在父类中该方法内完成了this.config=config,其他的所有ServletConfig的代理方法都使用this.config来完成的。一旦覆盖,那么this.config就是null。

l 如果我们需要做初始化工作,那么可以去覆盖GenericServlet提供的init()方法。

6 HttpServlet

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwzfdw.html