Java WEB开发实战 之 第三部分:Servlet开发(2)【私塾在线原创】

Servlet接口中定义了Servlet基本的回调方法,如下:
init(ServletConfig config)
destroy()
service(ServletRequest request,ServletResponse  response)
 
Web容器管理servlet实例的生命周期,用户不能调用这些方法
我们可提供这些方法的实现,来操纵servlet实例及资源
这三个回调方法构成了Servlet的生命周期的控制方法
init方法
1:init方法在servlet实例首次创建时由Web容器调用
2:Servlet规范确保init方法完成之前该servlet不会处理任何请求
3:需覆盖init方法的情况:创建或打开任何与servlet相关的资源、初始化servlet的状态
service方法
1:service方法由Web容器调用,处理用户请求
2:MyServlet类的父类实现了service方法,根据HTTP请求方法(GET、POST等),将请求分发到doGet、doPost等方法
destroy方法
1:destroy方法在servlet实例被销毁时由Web容器调用
2:Servlet规范确保在destroy方法调用之前所有请求的处理均完成
3:需要覆盖destroy方法的情况:释放任何在init方法中打开的与servlet相关的资源、存储servlet的状态
Servlet接口
init(config:ServletConfig)
service(request,responce)
destroy()
nServletConfig接口
getInitParameter(name:String) : String
getInitParameterNames() : Enumeration
getServletName() : String
 
1:GenericServlet类实现ServletConfig接口,可直接访问配置
2:Web容器调用GenericServlet类的init(config)方法,存储config对象,然后调用init()方法
3:可在自己的servlet类中覆盖init()方法,不要覆盖init(config)方法
4:getInitParameter方法提供servlet访问servlet实例初始化参数的功能
GenericServlet抽象类

java代码:
nit(config:ServletConfig)
init()
service(request,responce)
destroy()
getInitParameter(name:String) : String
getInitParameterNames() : Enumeration
getServletName() : String
HttpServlet
init()
doPost(request,responce)
doGet(request,responce)
 
示例:在线投票计数,演示Servlet生命周期的功能,并体会Tomcat对Servlet生命周期的控制和基本实现方式——单实例多线程运行。
要注意这种方式是线程不安全的。
初始化参数的部署描述符

java代码:
EnglishHelloexamples.web.HelloServletgreetingTextHello
 
说明:初始化参数存储在与Servlet实例相关的ServletConfig对象中,由容器在初始化Servlet实例时自动传入
在Servlet类里面,使用如下语句就可以访问到初始化参数:
参数值 = this. getInitParameter(“参数名称”);
 
注意:从配置文件读出来的数据都是文本型的,如果需要其他类型,需要做转换
 
视频配套PPT,视频地址【   Java WEB开发实战视频课程 】

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26715443/viewspace-717362/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26715443/viewspace-717362/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值