Spring Boot是由Pivotal團隊供給的全新框架,其設計目標是用來簡化新Spring應用的初始搭建以及開辟過程。該框架利用了特心猿意馬的體例來進行設置裝備擺設,從而使開辟人員不再需要界說樣板化的設置裝備擺設。經由過程這種體例,Spring Boot致力于在蓬勃成長的快速應用開辟范疇(rapid application development)當作為帶領者。
在Servlet API中有一個ServletContextListener接口,它可以或許監聽ServletContext對象的生命周期,現實上就是監聽Web應用的生命周期 當Servlet容器啟動或終止Web應用時,會觸發ServletContextEvent事務,該事務由 ServletContextListener 來處置。在 ServletContextListener 接口中界說了處置ServletContextEvent事務的兩個方式contextInitialized和contextDestroyed。
第一步調:建立一個springboot的項目(也可以建立一個簡答的java項目)。
1、 打開建立頁面 選擇File-new-project..
2、選擇建立的項目為spring initializr 進入springboot項目建立步調(也可以選擇類型java,建立一個通俗java項目)
3、輸入項目名字,選擇依靠web(按照項目需求選擇,此次需要),選擇存放目次-完當作(Finish)
第二步調:ServletContextListener監聽實現。
1、起首建立一個類ServletListener并實現接口implements ServletContextListener
2、實現contextInitialized和contextDestroyed方式
3、在類ServletListener撒花姑娘添加注釋@WebListener
import javax.servlet.annotation.WebListener;
4、在啟動類ExcelimportApplication上添加注釋@ServletComponentScan
import org.springframework.boot.web.servlet.ServletComponentScan;
5、具體代碼如下所示:
import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;import javax.servlet.annotation.WebListener;@WebListenerpublic class ServletListener implements ServletContextListener { @Override public void contextInitialized(ServletContextEvent servletContextEvent) { System.out.println("-------啟動---------"); } @Override public void contextDestroyed(ServletContextEvent servletContextEvent) { System.out.println("-------終止---------"); }}
第三步調:ServletContextListener監聽器測試。
1、起首啟動辦事運行日記如下所示。
第四步調:ServletContextListener監聽具體利用介紹。
1、contextInitialized
用來通知監聽器web應用初始化過程已經起頭。 當Servlet 容器啟動Web 應用時挪用該方式。在挪用完該方式之后,容器再對Filter 初始化,而且對那些在Web 應用啟動時就需要被初始化的Servlet 進行初始化
2、contextDestroyed
用來通知servletContext即將封閉。當Servlet 容器終止Web 應用時挪用該方式。在挪用該方式之前,容器會先銷毀所有的Servlet 和Filter 過濾器。
3、一般本家兒要借助于contextInitialized來加載緩存數據
public void contextInitialized(ServletContextEvent servletContextEvent) ServletContext sc = servletContextEvent.getServletContext();
//查詢數據的數據加載的緩存中 sc.setAttribute("key","value"); System.out.println("-------啟動---------");}
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!