Servlet

1.javaEE规范之一,也是java提供的一门动态web资源开发技术

作用:WEB Server与WEBapp解耦合

实现:一个类实现Servlet接口或者继承GenericServlet,并重写里面的所有方法

 

 

2.生命周期:(由Tomcat服务器负责)

(1):默认情况下,服务器启动的时候Servlet对象并没有被实例化,但在用户发送第一次请求的时候Servlet对象被实例化

(2):init():Tomcat服务器启动的时候执行,只执行一次,通常是完成初始化的操作,且在执行的时候,Servlet对象已经被创建出来了

(3):service():处理用户请求的核心方法,用户请求一次,方法执行一次,因此,此方法是专门用来处理请求和响应的

(4):destroy():只执行一次,此方法在执行的时候,Servlet对象还未被销毁,因此可以用来用于关闭操作,比如流,数据库的连接关闭

注:Servlet的构造方法也是在对象第一次创建的时候执行,并且也只执行一次,那能否代替init()呢?

答案是不能,因为不安全。因为无参容易变成有参,原来的无参就没有了,会导致Servlet对象无法实例化

3.ServletConfig接口:(Servlet规范中的一员)

(1):Tomcat服务器实现了ServletConfig接口

(2):一个Servlet对象中有一个ServletConfig对象

(3):ServletConfig包装了web.xml文件中<servlet></servlet>中的配置信息

(4):Tomcat服务器调用Servlet对象的init()方法的时候需要传一个ServletConfig对象的参数给init()方法

4.ServletContext:(Servlet规范中的一员)

(1):Tomcat服务器实现了ServletContext接口

(2):ServletContext对象在WEB服务器启动的时候创建

(3):对于一个webapp来说,ServletContext对象只有一个,且在服务器关闭的时候销毁

(4):ServletContext对象其实就是整个web.xml文件,放在ServletContext对象中的数据,所有Servlet一定是共享的

(5):Tomcat是一个容器,一个容器中可以放入多个webapp,一个webapp对应一个ServletContext对象

(6):ServletContext还有另一个名字:应用域。如果所有的用户共享一份数据,并且这个数据很少的被修改,并且这个数据量很小,可以将这些数据放到ServletContext这个应用域中

当然,以后在编写Servlet类的时候,实际上是不会去直接继承GenericServlet的,因为B/S机构是系统,这种系统是基于Http超文本传输协议的,在Servlet规范当中,提供了一个类:HttpServlet。它是专门为HTTP协议准备的一个类,但是,它也是继承GenericServlet类的

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值