00:00
在理解了什么是监听器设计模式以后,下边我们来看规范里边的监听器。商列规范里边给我们提供了八个减震器。大家看一下这八个。在这儿呢啊,这八个我们都要学习。这八个监听器,监听器你注意监听器监听什么呢?它得有是不是事件源呢?你监听的对象是谁呀?他监听对象是request session和contest。注意他监听的对象,也就是事件原是request session和solid contest,也就是说正好监听是不是?这三个是。预存空间吧。对不对。那么。监听什么呢?具体监听这三个对象的什么?
01:01
也就是说触发这三个,触发这八个啊,不是三个,这八个监听器的事件是什么。分别是这三个对象的创建与销毁。以及他们预使用空间里边的属性添加,删除修改等等,当然session钝化与活化是专门对session的啊,处理我们,呃,最后再说它。就是大部分是什么。这三个对象的创建、销毁和。语义属性的变化。需要注意一点,我们在web应用里边使用的这八个监听器。都需要在外表插里边对这个监听器进行注册。它里面有个标签叫listener。这就注册了,这就注册了啊,所以注册也很简单,那么下面我们首先来看第一个监听器啊,Solid request listener。
02:04
Solid request listener这个这个这个在哪儿呢?我们这样打开API看一下啊。打开API帮助文档。嗯,咱们找Java X。我们不是说嘛,三规范里边嘛,是吧。啊,这里边儿看看啊,Solid request listener,看看有没有接口接口。诶,有吧。它里边就有俩方法,一个叫request destroyed。请求是被销毁啊。一个是。Request initialized。请求bay创建。参数都是什么?
03:01
Sorry requests。Event。Sorry request。事件。我们先不管那么多,简单先用一下它啊,简单用一下。啊,用一下的话。创建一个web工程啊,Dynamic web project。零四,嗯,我们这个叫request request listener。2.5。Finish。好切换视图切换啊,哎,这有是不是又显示出来我们的服务器了啊。啊。那正常我们写一个。
04:03
呵呵,怎么说呢?其实不用写,我什么页面也不用写啊,什么页面也不用写,我就。看好,我就给这来一个class。那class叫什么?我叫my request listener可以吧,Com点北,Power not点儿。Listen。我视线的接口,Soli request list。
05:00
Yeah。这这这接口里边这方法怎么回事。怎么?不需要我们去实现它吗?你看看。大理如说你实现这个接口,这些接口里边的方法request你看没有吗?有啊。你看。怎么回事呢?那我们现在不管它那么多。其实要不咱们这样打开你看。这这俩default,你看default,这有个default。有这俩方法啊。他现在。他给我们这个接口里边这俩方法实际上是什么,是不是实现的呀,我们可以对它进行重写。
06:01
可以对它进行重写,也就是说,这俩方法并不是抽象方法。他已经有实现了,只不过这个实现是不是空实现的,我们把它弄过来呗,重写一下。这段话一个叫request Detroit,一个是request initialized,是吧,Request。De de de de destroy。是吧,这一个吧。还request request。Initialize initialize。这也不要了,删掉。这也不要了。它调换父类的嘛,你调父类的,父类的里边就是空的呀,我们不用管它了。那我这儿写上一句话。
07:07
请求对象被创建。请求对象被。销毁,OK,就写这样的两句。紧接着呢,紧接着。这个是要去注册的啊,我拷贝全名。在哪,在外边XL里边。这我就都不要了,我这里面没有页面,所以就不存在欢迎页面的问题了啊。Listener。Listener class。
08:01
OK了。对不对,这就OK了。啊。现在就可以运行了。你注意啊,我这直接跑这个程序,你看会出现什么。走。看到没?请求对象被创建,紧接着马上是被毁了,什么意思啊?他这个监听器监听的就是只要你像我的这个。你请求我这个。Web工程这个web应用。那么。只要你向我发出请求。你向我发出请求,我这边是不是肯定要给你创建请求对象?
09:00
所以这儿马上就监听到了。所以他就会执行这句话。而我们大家知道,请求的生命周期很短。我只要给你响应了,马上就把请求对象给你销毁了,有同学说没响应啊,哪响应的,这不是响应吗?404没找到啊,我告诉你我没找到,你要找那个幻像页面,我没找到,这也是响应啊。你再写一个咱们看啊,我这来一个JSP。这个我不叫index啊,我叫什么,我叫随便秀点JSP是吧,随便写一个show page好。我把这清掉。我给他就访问秀。第二,JSP,这是发售请求吧。
10:02
这发出请求,是不是我们服务器肯定要给他创建这个请求对象。创建完了以后,只要在我们页面一显示。只要在页面能够显示出来那个修page显示这个东西,就说明是不是给了响应了。看着。修配就显示了吧。我们看到这为什么能显示,是因为这是不是响应就给我们的响应体啊。这想象题里边是不是有这个内容,所以这个请求肯定创建了。也被销毁了。没问题吧?这就是这个监听器。这就我们定义的这个监听器。会用了吧。OK。
我来说两句