分別在Tomcat,spring初始化時註冊監聽器
Tomcat,spring初始化時載入自定義監聽器方法
Tomcat初始化時載入自定義監聽器方法:
1.建立一個監聽器MyListener繼承ServletContextListener
//@Component //監聽器是web層的元件,它是tomcat例項化的,不是Spring例項化的。不能放到Spring中 public class MyListener implements ServletContextListener { private UserService userService = null;//UserService中的相關邏輯 @Override public void contextDestroyed(ServletContextEvent event) { } @Override public void contextInitialized(ServletContextEvent event) { 專案在啟動時,把Spring配置檔案通過Spring的監聽器載入,儲存到ServletContext中,我們只要在ServletContext中獲取即可。 ApplicationContext context = (ApplicationContext) event.getServletContext() .getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE); userService = (UserService) context.getBean("UserService"); System.out.println(userService); } } 、
2.並在web.xml中配置該監聽器:
這是tomcat載入spring容器的配置:
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:beans.xml</param-value> </context-param>
而載入我們自定義監聽器也需要配置在web.xml中
<listener>
<listener-class>com.listener.MyListener</listener-class>
</listener>
2.載入spring監聽器方法
@Component//由載入spring容器時例項化該監聽器 public class CreateDefaultAdminListener implements ApplicationListener<ContextRefreshedEvent> { @Autowired private LoginService loginService; @Override public void onApplicationEvent(ContextRefreshedEvent event) { if(!loginService.hasAdmin()){ loginService.createDefaultAdmin(); } } }、
相關推薦
分別在Tomcat,spring初始化時註冊監聽器
Tomcat,spring初始化時載入自定義監聽器方法 Tomcat初始化時載入自定義監聽器方法: 1.建立一個監聽器MyListener繼承ServletContextListener //@Component //監聽器是web層的元件,它是tomcat例項化的,
隨web容器啟動Java類,spring初始化某個類的方法
之前有篇文章講過隨web容器啟動某個Java類的某個方法的實現,具體有兩種方式,參考原文章:http://blog.csdn.net/u010523770/article/details/44677447 但是在我的web專案中遇到了這樣一個問題,我在需要隨web容器的類的方法中加入了一個while(true
Java Web系統初始化時從資料庫中載入資料到文字(ibatis,spring)
有一些特殊情況,需要在系統初始化時載入一些配置屬性到本地文字中 web.xml <listener> <listener-class> org.springfra
結構體中的指標,用malloc初始化時,沒有分配足夠的記憶體空間,造成下述錯誤
對結構體中的指標,初始化和釋放,遇到堆損壞問題(附連結點選開啟連結)點選開啟連結) out_defect.texturing = (TEXTURING *)malloc(sizeof(TEXTURING
spring配置quartz定時任務,支援初始化執行,迴圈執行,定點執行等
Spring配置quartz的方式有註解的方式和配置檔案的方式,今天主要說使用配置檔案的方式來實現初始化執行和定點執行 第一步,在pom.xml配置jar包依賴 <!-- 新加quartz依賴 --> <dependency>
Spring例項化時各種初始化方法執行順序
帶序號的步驟來自Spring實戰(第4版),紅字為補充部分。 1.Spring對bean進行例項化; Constructor構造方法 2.Spring將值和bean的引用注入到bean對應的屬性中; 3.如果bean實現了BeanNameAware介面,Spring將bean的ID傳遞給
Java執行時環境初始化時出現錯誤,你可能需要重灌Flash
安裝了Adobe Flash CS4的版本,由於是漢化綠化版,再加之之前一直用慣了flash8.0,很不習慣的是他的操作介面,特別可惡的是經常出現假死狀態。於是放棄這個版本,安裝了CS3的,畢竟8.0版的ActionScript 2.0已經逐漸被拋棄。3.0的已經在很大程度上
spring初始化訪問資料庫,載入資料
背景:在實際開發中,通常伺服器都很多,每臺伺服器上的應用都需要配置引數,如果有修改或者變動就會很麻煩,每臺伺服器都需要改一次。所以有必要把一些引數配置到資料庫裡,這樣方便檢視和管理,這就需要初始化時載入資料庫方案一:(1)寫一個類,實現spring中的Initializing
Spring 中容器初始化時呼叫的介面類
在日常開發中難免會經常遇到這樣的應用場景,在專案初始化時執行指定的程式碼實現一些功能,或者在專案啟動後執行一些程式碼實現功能。這個時候就需要用到Spring提供的一些介面、註解了。本文都是以SpringBoot為基礎。 1.Spring容器啟動前執行 1.1介面
spring原始碼(一) springmvc啟動過程,springmvc初始化過程
spring mvc配置 我們知道要想使用springmvc,一般需要配置如下 web.xml中配置ContextLoaderListener來載入spring根配置檔案。 <web-app> <context-param&g
請問怎麼解決:測試連線失敗,因為初始化提供程式時發生錯誤
今天在用 BExportDoc V1.0 For MySQL(MySQL資料庫表結構匯出器)這個工具的時候遇到一個問題,測試連線的時候,出現了錯誤,尋求博友指導一下: 首先我已經安裝好了mysql-connector-odbc(ODBC資料來源管理器),已連線成
reat + cesium。 實現 初始化時自動定位,鼠標移動實時展示坐標及視角高度, 淹沒分析
action mars extend mov sce 初始 globe 設置 定位 只貼實現淹沒分析這塊的代碼。 import styles from ‘./cesium.less‘; import React from ‘react‘; import Cesiu
C++構造函數對類成員變量初始化,使用初始化列表和構造函數內部直接賦值 的差別
初始化列表 不能 構造 調用 ron 二次 art size strong 初始化和賦值對內置類型的成員沒有什麽大的差別,像任一個構造函數都能夠。但有的時候必須用帶有初始化列表的構造函數: (1) 成員類型是沒有默認構造函數的類。若沒有提供顯式初始化時,則編譯器隱式
C#數據沒初始化,使用會報錯,可以初始化null
rgs send protect null new 報錯 tar sender ted protected void Page_Load(object sender, EventArgs e) { string[] A; if (B== 0)
c++靜態成員變量初始化時不受訪問權限控制
靜態成員 col stat name code new clas getname return 1、要在類外初始化,const 成員變量才能在類內初始化 2、初始化在類外,而不在main函數內 1 class A{ 2 private: 3 string n
資產模型數據初始化時應註意的事項
date 行數 span badi 激活 資產 html 行數據 .com 資產模型建立之後,在數據初始化上有個比較特殊的地方,需要激活一個BADI,然後按順序初始化數據。 1. 要AA11和AA12保證抽數時的增量提取間隔和總賬行一致。 2. 數據
C# Newtonsoft.Json JObject移除屬性,在序列化時忽略
-h 大小 reac plain bsp source images too 實例 原文 C# Newtonsoft.Json JObject移除屬性,在序列化時忽略 一、針對 單個 對象移除屬性,序列化時忽略處理 JObject實例的 Remove() 方法,可以在
Spring初始化過程到AOP
should aop amp 切點 reg 遞歸調用 finish pes auto 初始化過程 public void refresh() throws BeansException, IllegalStateException { synchro
Java 中 HashMap 初始化時賦值
lec SM 解決 道理 test ack 增加 數據結構 解決辦法 1、HashMap 初始化的文藝寫法HashMap 是一種常用的數據結構,一般用來做數據字典或者 Hash 查找的容器。普通青年一般會這麽初始化:HashMap<String, S
LeetCode44. Wildcard Matching (DP,注意初始化)
Given an input string (s) and a pattern (p), implement wildcard pattern matching with support for '?' and '*'. '?' Matches any single character.