00:00
首先呢,我们对这个呢,来做一个小结,大家看一下。新建逆呢?叫什么呀?叫监听器,监听器OK。呃,大部分内容的话呢,我们做笔记的时候已经做了啊,或者是PPT里面我们直接复制一些代码的了,首先我们需要知道什么是监听器,现在。就是这样的是吧,我们已经学完了一些这定义之后,回头再看这个,回头再来看这个定义,这个定义怎么样,这个定义就变得很生动了,就是大家现在有一些同学去可能会去听一些情歌是吧,如果你要是没有那个切身切肤之痛的话,那些情歌也只能是用来听听,如果你有过类似的这个经历的话,你再听你可能就会热泪盈眶。
01:28
哎,我们现在的话呢,学完了监听器是吧,我们回来再来看这个概念,可能就会觉得,哦,原来是这样的说用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监听的对象发生情况时,立即采取相应的行动好了,那即便是我们学完之后的话呢,我们看这个概念也仅是要求大家来做一个了解,不要求大家去背这个定义,去备这个定义,啥意义都没有,好了,第二个我们说监听器的分类可以分为几种类型呢?一共是三种类型。
02:17
一种。啊,监听一对象自身创建和销毁的这预对象我们指的是几个呀,三个吧,这三个配置comp request跟application,第二个先听一对项中属性添加和删除的也是这三个,然后呢,第三个跟三相关的,听听绑定到30分钟某个预律项状态的直线液晶器,一共是这一种,三说说如何如何编写。
03:08
监听器变监听器的话呢,大致大约需要分为这样的几个步骤是吧?第一个步骤编写实现监听器接口的二类,然后呢二对于第一种。和第二种。监听器需要在web.XL文件中进行注册,就完了这两个步骤。第一个步骤我们举个例子,比方说这个。
04:03
方法我们就不说了哈,不一个一个说了,好了,第二个,Hello,康来。这个注册呢,也特别的简单,好了就完了,下面第三个。应该是,呃,详解每一个监听器,我们看看第二个,这个分类的话呢,大家需要了解一下哦,我分为这样的几类监听,一对一项创建和销毁的,这个至少需要打一个重题,大家至少需要知道我一共是八个,这八个都是啥样的,这个需要知道,需要了解。就是别人问你的时候,你要不知道的话,已经够严重了是吧,那这个还不是最严重的,别人已经说给你听了,你还不知道,那你过分了,但是你是不是要记下来呢?其实记不记还都行,因为你只要把最常用的记下来就可以,但是别人跟你捣鼓的时候,是吧?说镇定剂啊,一共是分三种类型,分别是什么,你听完之后你你你一无所知,这就不咋好了。
05:19
这个步骤的话太简单了哈,我们这个说一下吧,换一下OK,第三个第三个的话呢,我们来看具体这个监听器,那第一类,第一类是什么呢?叫监听这个。他我们说吧,这有几个呀,有三个吧,这三个。CRC。一二。
06:08
三哎,我们需要注意的呢,都是前面有个什么呀,前面有一个这个预对象的这个类型,Http session,这个是service request,注意它没有什么呀,没有http service request啊,那个没有,这个是service context,后边都是什么,后边都是listener好了,而且每个里边都有两个方法,一个是创建的,一个是销毁的,说在每一个监听器中都有两个方法,其中一个说待遇对象创建后立即被调用的方法,还有一个是。
07:08
在遇对象销毁前,销毁前被调用啊方法具体说的话呢,哪几个。我们看一下啊,我们往里边复制了哪几个呀,看这创建的销毁的创建的销毁的销毁的创建的它这个啊,如果说有一点让我们不满意的话,是什么呢?他要是把这个名字都起为一致的就好了,他对里边是不是有个created呀。啊,就这么一个,此外的话呢,其实这个名字都差不多行了。然后呢,说啊方法的参数,方法的参数,这个参数叫什么呀,参数也是三个都是相类似的是吧,以这个为例吧C以这个为例。
08:14
这里边只有一个方法,或者说我们应该想到只有一个方法是吧,就是反馈策略的contact,在方法中,哎,对象可以可以返回我们看一看其他的这个来。确实是,这里边只有一个反思的,刚才就看这个。只有一个返回,还有一个。
09:06
这个是返回request,还有一个返回contact吧,差不多,所以说到这块的话呢,我们关于这第一类监听器的话呢,就说白了,这里边我们要跟大家说的是,这里边有一个是很常用的,就是它。这个很常用。它有常用,具体什么时候用呢?哎,我们在讲课的时候呢,跟大家讲了是吧,就是在当前外部应用被加载的时候,它会对当前外部应用来做一些初始化,具体是哪些呢这些。这个。C过来,这个是最常用的,可以在当前外部应用被加载时,对当前外部应用的相关资源进行初始化操作,比方说创建数据源啊。
10:03
这个创建LT容G啊,读取啊,参数啊等等等,这个是最最常用的,刚才讲课的时候,同学问了这样一个问题,说老师我用那个S,那个印尼的方法可不可以呀。Service是不是有个init方法呀,Init,那init方法我可以让那个service有一个配置参数叫low down low down start up,还记得吧,我可以在外B应台启动的时候也去干这个事,答案是可以的,但是呢,Sub不是专门干这个活的,我们专门做这个初始化的,就用它,所以说用这个更合适,但用那个可以。你就像说哎这个嗯去迎宾,呃,我们正常说用礼仪小雪去迎宾,那你偏得让一个大库去迎宾,行不行,行,但那不是那么回事。礼仪小姐的话呢,更加专业,比方说介绍啊,包括这个微笑啊,都是招牌式的,你非得要一个这个大厨去赢,那他只能是说,哈哈,你来了,哈哈哈是吧,他不是专业干那个的,行好了,我们这里边最常用的就是他,而其他的两个的话呢,做一个了解就可以了,然后我们看第四个哪个。
11:24
第一行没有这个上面下边哦,我写错了,写错是吧?OK5第五个的话呢,我们谈到了这个叫嗯啊那这也错了,好了,叫今天一对酱中属性添加跟删除的变形剂,整个这个呀,做一个了解就可以了,这东西很少使用,所以说的话呢。
12:03
我们作为一个总结吧,我们还是让大家看一下,但这个真的很少用。我直接把这个复制过来。CC。叫什么呀?那个用的。嗯。行了可以了啊,就很少使用,做一个了解即可,行吧,了解即可。几乎不用。
13:05
OK,六五这是几个了,这是两种说完了吧,是吧,第三组,第三组的话呢,就是我们这块说的,它要绑定到session的。这里面一共是两个,我看哪两个。一个是确实是绑定到三的,我看看他。这个很少使用。二。还有一个是。最后一个。
14:07
好,第一个叫b session选它好,我直接从里边的话呢,把这代码把这个我们讲的东西复制一下这个。嗯。具体说一。监听实现了该接口的大化类对象被绑定到session或从session中绑定的指架,那这个时候绑定的话呢,叫这个方法解除绑定的话呢,调这个方法,二这个怎么了,不需要进行配置,因为因为这个因为这个这些方法怎么样,是不是直接在直接在那账号类上面要进行配置,三这边的方法这一些。
15:11
但这个的话呢,很少使用这个拿前面了解了解即可,了解即可,很少使用好最后一个,最后一个大家看一下这。最后一个的话呢,一干啥用的。说监听实现了该接口和reliable接口的Java类sessionion被钝化和活化这个事件。这里边说一个他。要这个接口刚来我没试哈,你不实现这个接口就不行啊,我们可以看一下过来,我不实现这个接口它会怎么样,这这个干掉保存啊再看。
16:25
启动我跑一下他好了,创建了一个新的放里边了是吧,每次怎么样,这是从30里面读取到了,注意我要进行什么呀,我要进行go,大家看一下。是不是也写到磁盘上了呀?OK,好了,我启动服务器。启动服务器的话呢,他没说读出来哈,好了,我来访问哈,大家看这个时候是不是创建了一个新的呀,它读不出来,因为你没有实现那个C来接口,看见了吧,我只能写,我读不出来,所以说的话呢,我们希望,所以说如果要是希望那个进行这个对话和火化操作的话呢,必须实现它,如果不实现的话,就只能写到磁盘上,但读不出来,我不实现。
17:30
洛故事见。该接口则只能写到磁盘上,但不能无去来,但不是这个你说活化动化呀,这些包括在跟的这个,在这SSE文件啊,这个我们知道就可以了,这个的话呢,优先级比那个了解要多一点啊,起码大家希望大家需要知道呼叫运行注册活化调用,钝化调用很少使用可以了,这个呢也较少被使用,但是这块我们这个活化钝化的话,它需要了解,因为我们以前指中之在谈这个剧列化什么时候用,这个时候就是一个很好的一个,这是很好的一个时候,行,以上的话呢,是我们今天讲的这个关于监听器的全部内容,这里边需要重点大家掌握的。
18:37
就是这个以后会经常使用好了,然后的话呢,我们来看一个例子。我们经常会看到啊,叫统计在线人数,统计在线客户吧,在线访客你在现在有有多少个人呢,我可以统计,然后呢,可以把访客踢出。
19:13
当前赛神其数来筛神吧是吧,棋所在的赛后边这个使用的话呢,在开发的时候用的用的并用的并不多,我直接不让你进来就可以了,包你踢出去,我给踢出去,踢出去是个什么情况,他伪装的这来的是吧,我们发现他是这个不合法的,我给你踹出去,但是这个跟QQ实现方式不一样,我们用我们这用Java写的,我们不过我们现在我们也可以实实现这个啊,我们来分析一下知怎么写说。呃,统计在线访客有哪些人,什么统计啊,他一登录的话怎么了,他一登录的话,务必它就会创建一个三对象了,所以说不是一登录啊,只要你访问我当前的任何一个页面,只要你访问的话,就创建了一个赛程对象,所以说一说利用什么呢?利用这口。
20:11
FTTB3。Eye。利用这个绿呢,可以。知道是有用户访问当前的外,然后这里边还需要说一下,我们这块属于统计这个在线访客的话呢,这统计这个人数啊,肯定只是一个模糊的人数,比方说那个人已经不再访问的时候,他已经把浏览器关了,那这个时候的话,我统计的时候这个人可能还在,因为怎么呢,浏览器关的话,那个三人数不关了,现在呢,以目前这个GS的技术,我们没有办法捕获这样一个事件,说我关浏览器,我可不可以捕捕获到这个事件捕获不着,我浏览器给它关掉,我这个事件捕捉不着,所以说我没有办法说浏览器一关就把这个session你麦关不了,所以说的话呢,统计这个占线访客啊,一定是一个。
21:13
大致的一个数,可能那个人已经离开了,或者他可能已经关机了,但你这你你这个上面的话呢,你还在统计,你可以使那个三星的生命周期短一点,比方说三三个的生命周期是这个15分钟啊,15分钟他要是不访问的话,这个时候的话呢,我就把这个这人踢出去,这三分就没有了嘛,这个时候相对而言会准确一些。好了,那呃,我利用这个呢,可以知道是否有当是否有这个是否有,是否有新访客吧,是否有新访客访问,看看页面访问他好吧,如果有。什么方法?过来。
22:01
很重很重位。Line。地方吧,哎,两个都复制了。哦,这个方法比较有说明什么呀,说明有新房。到来吧,是吧,好了,那若这个化为调用呢。说明什么呀,说明被调用。说明访客离开吧,所以说我们可以使用这个htv set来统计当天有哪些访客,好了,那第二个我们只是给大家PP思路哈,然后一会的话呢,我把需求详细的给你大回去自己写,看能不能解出来,第二个我如何把它给剔除呢?那说到剔除的话呢,那我们就得怎么样啊,可以使用一个GSP页面显示当前的访客,那这样的页面我们可以显示一下,这样页面大致上长得什么样呢?
23:39
比方说我们可以长成这样,比方说哎,访客ID。比方说什么192的幺。六八点。3.12,比如比方说啊。OK,有很多。当然我们这个。
24:02
如果要是一个这个在线的话呢,不可能总是这样,就是这么个意思吧。嗯,141有也有可能什么呀,有可能他是一个什么,他是一个注册用户,比方说叫老虎的牙。所以什么什么什么八点多少是吧,比方说这一个。感知战随便写的哈,行了好了,诶这样的话呢,他是什么呀,这个表是匿名的,这个表是已经登录的,这个是登录的登录客户,而这个的话呢,表示匿名客户,什么叫匿名客户啊,就是我上来我只看是吧,但是我没有进行注册,我也没登录,另外这个登录的就是啊,他是会员,然后我再看好了,这边的话呢,可以来进行显示,那我我这边的话呢,可以我就对他进行操作,比方说操作,操作的话呢,有好一点的,你可以做到什么程度,可以比方说可以跟他聊天,我们就不聊天了哈,我们提出。
25:30
踢出去。访问了啊踢出去,那踢出去之后的话呢,我们如何看他是不是被踢出了呢?就是说下一次这个人在访问这个页面的时候,你发现他需要创建一个新的session,就要踢出,踢出啊这块的话呢,我们可以把这个人踢出去,这个实际上踢出这个对谁的效果最好,对这个呃特的人最好看的效果最明显是吧?在访问一个页面,然后的话呢,这个页面的话呢,是需要登录的权限之后才可以访问的,你发现他想再访问这个页面的话,诶我得先登录一下,这个时候是为什么,是因为它已经被踢出了,或者说好久没有访问了是吧?这个session已经过期了,大家知道session过期的时候,大家都看见过那个效果吧,你在浏览一个这个网站,然后的话呢,你正在买东西,这个时候来个电话,你出去出去接了个电话,去了趟厕所,然后反正就是半个小时过去了,你回来,然后你再想点那个购物车,你发现你是不是得重新登录啊,那好一点的这个商城你会发现什么了购物。
26:33
他们里边那个东西还在,差一点的里边东西又不在了吧,都都经历过,就是说只为你保证半个小时,半个小时之后就没有了,那好一点的就是他把这个东西给你放到数据库里边了,下一次的话呢,还有所以说现在大家在评什么,在评那个,呃,阿里跟那个京东是吧,说阿里跟京东,结果是京东跟阿里还差着好几个城市。
27:01
虽然说京东很火是吧,但是它跟这个这个这个这个阿里,包括淘宝,还有这个阿里巴巴,还有那个天猫,还差了好几个头,还差了好差了好几个层次,最近的小米匿名小米已经成为中国的第三大电商,第一的排在第一的是谁啊?第一的是阿里,第二的是京东,第三的就是小米,去这半年卖了170多个亿。卖的多嘛,是吧,好了,哎,这块的话呢,我就可以给你踢出最明显的一个踢出效果,就是大家看踢出效果为为什么呢?比如说如果我要是做一个踢出的话,那么若啊正在访问一个必需登录的页面啊,再点击刷新发现页面。
28:02
无法访问,无法访问,耳虚先录好了,这是我们这个页面三,那第一个呀,我们说还再写一个吧,访客共有,访客共有。嗯,有多少多少有。而且对共有多少多少人,然后呢,其中匿名万客多少多少人,数字用户,OK,很明显这两个的和是不是它呀,能理解吧,好了就是这个,然后的话呢,我们看这个踢出,这怎么做踢出。
29:06
踢出超重D让其单身失效了啊OK,我们整个的需求的话呢,就这么多,我觉得这个数需求我是讲清楚了,大家可以根据这个需求的话呢,去写一些页面,然后思考具体应该如何完成,我我给了你一个相对而言比较细致的这个需求,然后看你能够做到什么程度,这里边的一些细节需要大家思考,比方说如何来设计类,如何来提出,我只是告诉你了,说这个三参失效,那我怎么在点它的时候能够找到那个三参呢?我再说一遍,我一定是在我点这个超链接的时候,然后我能找到那个session吗?我好让那个session失效,我怎么让它失效啊,啊调研的方法,那我怎么找到那个30呢?那个三存在哪啊,这是个问题,还有共防多少人,这个东西需要存在什么,里边是request还是session,还是application,还是配置context,这这都是问题,这两个方法到到底怎么用。
30:11
这个怎么用,这个怎么用啊,这个是调用的时候离开,离开的话说明这个时需要减一吧,那这个值跟这个值是不是也得减呢?有一个得减,那这个时候他要是上来的话,这个需要加一吧,这里边有一个值需要加吧,OK好了,这是我的一个需求,大家明天是这个这个这个休息日哈,大家可以看一下这个需求能够写到什么程度,礼拜一的话呢,我们详细来讲。
我来说两句