Asp.Net的應用中通過根目錄下的Global.asax,在Application_Start方法中做一些初始化操作,比如:預先加載緩存項對網站熱點資料進行預熱,擷取一些遠端的配置資訊等等。
Spring-MVC的應用中,要實作類似的功能,主要是通過實作下面這些接口(任選一,至少一個即可)
一、ApplicationContextAware接口
二、ServletContextAware 接口
三、InitializingBean 接口
四、ApplicationListener<ApplicationEvent> 接口
示例程式:
運作時,輸出的順序如下:
1 => StartupListener.setApplicationContext
2 => StartupListener.setServletContext
3 => StartupListener.afterPropertiesSet
4.1 => MyApplicationListener.onApplicationEvent
4.2 => MyApplicationListener.onApplicationEvent
注意:onApplicationEvent方法會觸發多次,初始化這種事情,越早越好,建議在setApplicationContext方法中處理。