教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線:400-618-4000

問(wèn)答>JavaEE>監(jiān)聽(tīng)事件可以分成幾類(lèi)?

監(jiān)聽(tīng)事件可以分成幾類(lèi)?

來(lái)源傳智教育2022年04月22日 14時(shí)49分50秒

  Servlet事件監(jiān)聽(tīng)器就是一個(gè)實(shí)現(xiàn)特定接口的Java程序,專(zhuān)門(mén)用于監(jiān)聽(tīng)Web應(yīng)用程序中ServletContext、HttpSession和ServletRequest等域?qū)ο蟮膭?chuàng)建和銷(xiāo)毀過(guò)程,監(jiān)聽(tīng)這些域?qū)ο髮傩缘男薷囊约案兄壎ǖ紿ttpSession域中某個(gè)對(duì)象的狀態(tài)。根據(jù)監(jiān)聽(tīng)事件的不同可以將其分為三類(lèi),具體如下。

  (1)用于監(jiān)聽(tīng)域?qū)ο髣?chuàng)建和銷(xiāo)毀的事件監(jiān)聽(tīng)器(ServletContextListener接口、HttpSessionListener接口、ServletRequestListener接口)。

  (2)用于監(jiān)聽(tīng)域?qū)ο髮傩栽黾雍蛣h除的事件監(jiān)聽(tīng)器(ServletContextAttributeListener接口、HttpSessionAttributeListener接口、ServletRequestAttributeListener接口)。

  (3)用于監(jiān)聽(tīng)綁定到HttpSession域中某個(gè)對(duì)象狀態(tài)的事件監(jiān)聽(tīng)器(HttpSessionBindingListener接口、HttpSessionActivationListener接口)。

  在Servlet規(guī)范中,這三類(lèi)事件監(jiān)聽(tīng)器都定義了相應(yīng)的接口,在編寫(xiě)事件監(jiān)聽(tīng)器程序時(shí)只需實(shí)現(xiàn)對(duì)應(yīng)的接口就可以。Web服務(wù)器會(huì)根據(jù)監(jiān)聽(tīng)器所實(shí)現(xiàn)的接口,把它注冊(cè)到被監(jiān)聽(tīng)的對(duì)象上,當(dāng)觸發(fā)了某個(gè)對(duì)象的監(jiān)聽(tīng)事件時(shí),Web容器將會(huì)調(diào)用Servlet監(jiān)聽(tīng)器與之相關(guān)的方法對(duì)事件進(jìn)行處理。

和我們?cè)诰€交談!