<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-42  評(píng)論-349  文章-4  trackbacks-0

    (殘夢(mèng)追月原創(chuàng),轉(zhuǎn)載注明)

    在Windows編程中,我們常常需要處理各類事件,比如鼠標(biāo)單擊事件、雙擊事件。在Spring中, ApplicationContext也有發(fā)布和監(jiān)聽時(shí)間的能力。我們知道,在windows開發(fā)中,如果要響應(yīng)某個(gè)事件,我們只需要編寫相應(yīng)windows消息的響應(yīng)函數(shù)就可以了。比如鼠標(biāo)單擊事件,相應(yīng)的消息就是WM_LBUTTONDOWN 。在Spring中也是一樣,Spring中ApplicationEvent類及其子類就相當(dāng)于Windows中的消息,事件監(jiān)聽器ApplcationListener的實(shí)現(xiàn)類就相當(dāng)于Windows編程中的消息處理函數(shù)。

    要使用Spring事件處理機(jī)制,就必須先定義一個(gè)事件(定義一個(gè)Windows消息),發(fā)布出去后,再定義一個(gè)事件監(jiān)聽器(編寫消息處理函數(shù)),發(fā)布到容器中。這樣,當(dāng)該事件發(fā)生后,我們就可以在事件監(jiān)聽器的onApplcationEvent()方法中處理我們的事件了。

    ApplicationEvent類是抽象類,不能被實(shí)例化,故Spring中的事件類都是其子類。我們要自定義一個(gè)事件就必須擴(kuò)展該類,該類的代碼如下:

    如上所示,抽象類ApplicationEvent中timestamp字段存貯事件發(fā)生的時(shí)間,在該事件發(fā)生時(shí)(事件類被實(shí)例化),ApplicationEvent會(huì)自動(dòng)的把當(dāng)前的時(shí)間存儲(chǔ)到該字段中,在應(yīng)用中可以通過getTimestamp()方法獲取該時(shí)間。如果應(yīng)用要傳遞一個(gè)對(duì)象給監(jiān)聽器,那么可以把要傳遞的對(duì)象作為構(gòu)造函數(shù)的參數(shù)source傳遞給ApplicationEvent類。

    為了監(jiān)聽事件的發(fā)生并處理事件,Spring提供了一個(gè)接口ApplicationListener,代碼如下:

    當(dāng)有ApplicationEvent類的子類被發(fā)布到ApplicationContext時(shí),如果已經(jīng)在上下文中部署有實(shí)現(xiàn)了ApplicationListener接口的Bean,那么這個(gè)Bean會(huì)得到一個(gè)通知,方法onApplicationEvent()會(huì)被調(diào)用,并將該事件的實(shí)例作為參數(shù)傳入。與Windows消息處理函數(shù)不同的是,這個(gè)方法會(huì)響應(yīng)所有的事件。因此在編寫onApplicationEvent()方法時(shí),應(yīng)當(dāng)要先判斷當(dāng)前的事件是否是我們要響應(yīng)的事件。




    By:殘夢(mèng)追月
    posted on 2008-07-24 16:39 殘夢(mèng)追月 閱讀(3081) 評(píng)論(3)  編輯  收藏 所屬分類: Spring

    評(píng)論:
    # re: Spring中ApplicationContext的事件機(jī)制(一 ) 2008-07-25 15:50 | 龐永慶
    你好 我是出版社的編輯,我看到你博客中的內(nèi)容,感覺寫的非常好?,F(xiàn)在有一本SSH的書。如果想把這些內(nèi)容和更多的人分享,可以和我聯(lián)系,把這些東西寫成書。
    我的郵箱:books_522008@yahoo.com.cn
    或者加我的MSN:pyq_19852008@hotmail.com  回復(fù)  更多評(píng)論
      
    # re: Spring中ApplicationContext的事件機(jī)制(一 ) 2008-07-25 19:51 | 殘夢(mèng)追月
    @龐永慶
    具體我會(huì)聯(lián)系你的!  回復(fù)  更多評(píng)論
      
    # re: Spring中ApplicationContext的事件機(jī)制(一 ) 2014-01-25 11:38 | wxx
    學(xué)習(xí)了  回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 国产成人精品亚洲一区| 中国毛片免费观看| 亚洲精品无码久久久| 成全视频在线观看免费| 亚洲天堂电影在线观看| 免费看国产一级特黄aa大片| 国产在线精品一区免费香蕉| 亚洲国产模特在线播放| 国产99视频精品免费视频7| 成人无码a级毛片免费| 久久精品国产亚洲AV忘忧草18| 亚洲国产成人精品久久久国产成人一区二区三区综 | 两个人www免费高清视频| 亚洲成在人线电影天堂色| 免费国产不卡午夜福在线| 免费毛片a线观看| 亚洲精品动漫免费二区| 日本亚洲成高清一区二区三区| 两性刺激生活片免费视频| 伊人久久国产免费观看视频| 亚洲日本国产精华液| 亚洲无码高清在线观看| 97在线观免费视频观看| 伊人久久大香线蕉免费视频| 国产AV旡码专区亚洲AV苍井空| 亚洲中文久久精品无码| 日美韩电影免费看| 99久久免费中文字幕精品| 一级毛片无遮挡免费全部| 在线综合亚洲欧洲综合网站 | 国产区图片区小说区亚洲区| 亚洲福利一区二区精品秒拍| 亚洲人成电影网站国产精品| 一区二区无码免费视频网站| a级片免费观看视频| 美女被爆羞羞网站在免费观看| 亚洲伊人久久大香线蕉| 久久国产亚洲精品麻豆| 亚洲国产高清在线一区二区三区| 成年人网站在线免费观看| 91在线手机精品免费观看|