Spring容器啟動之後進行初始化操作

2021-09-29 17:32:12 字數 1081 閱讀 3230

在開發專案中,經常會遇到這樣的需求:專案啟動之後需要進行一些初始化操作。在spring專案開發中可以使用下面兩種方法完成。

spring中實現**如下。注意可以使用@component註解,但必須在xml中掃瞄包,註冊為元件;也可以在xml中直接配置bean,否則下面方法不會被執行。

使用@postconstrut註解

@component

public

class

initconfiguration

implements

}

注意: 如果出現上面方法執行兩次,可能由於在web專案中存在兩個容器,

spring root context 另乙個就是我們自己的 projectname-servlet

此外本人使用spring4.x實測並沒有執行兩次。

@override  

public

void

//需要執行的邏輯**,當spring容器初始化完成後就會執行該方法。

} }

2. 使用@postconstrut註解

@component

public

class dispatchertask

}

component-scan標籤預設情況下自動掃瞄指定路徑下的包(含所有子包),將帶有@component、@repository、@service、@controller標籤的類自動註冊到spring容器。對標記了 spring』s @required、@autowired、jsr250』s @postconstruct、@predestroy、@resource、jax-ws』s @webserviceref、ejb3』s @ejb、jpa』s @persistencecontext、@persistenceunit等註解的類進行對應的操作使註解生效(包含了annotation-config標籤的作用)

Spring容器啟動之後進行初始化操作

在開發專案中,經常會遇到這樣的需求 專案啟動之後需要進行一些初始化操作。在spring專案開發中可以使用下面兩種方法完成。使用 postconstrut註解 spring中實現 如下。注意可以使用 component註解,但必須在xml中掃瞄包,註冊為元件 也可以在xml中直接配置bean,否則下面...

Spring容器啟動之後進行初始化操作

在開發專案中,經常會遇到這樣的需求 專案啟動之後需要進行一些初始化操作。在spring專案開發中可以使用下面兩種方法完成。spring中實現 如下。注意可以使用 component註解,但必須在xml中掃瞄包,註冊為元件 也可以在xml中直接配置bean,否則下面方法不會被執行。使用 postcon...

spring事務操作後進行非同步操作

開發中有很多需要事務a操作後進行非同步b操作,如傳送mq,或者開執行緒做其他事情.有一部分的非同步操作需要查詢當前事務方法的儲存 修改資料.所以,如果直接在事務方法中呼叫非同步方法的話,如果非同步方法的邏輯查詢對應的資料庫記錄時,還沒有刷到資料庫,那就會獲取不到最新值 解決方法 方案一 呼叫非同步的...