SpringBoot使用 Async非同步呼叫方法

2021-08-20 22:10:28 字數 966 閱讀 5712

有時間一些比較耗時的方法需要使用非同步呼叫,之前會自己維護乙個執行緒池,然後非同步呼叫,但是在spring環境下可以乙個@async輕鬆搞定。

springboot要使用@async需要以下兩個步驟:

1.使用@enableasync開啟非同步;

2.定義spring元件,使用@component和@async;

示例:使用@enableasync開啟非同步:

定義spring元件,使用@component和@async:

測試用的controller:

啟動專案,執行結果:

非同步方法執行成功,可以看到有個日誌列印出來了,這個是spring列印的日誌,因為我們沒有指定非同步執行的executor,在第一次執行的時候會找不到executor,會返回null,由spring預設的executor去執行,這個以後有時間再記錄。

其實非同步註解**的方法可以有乙個返回值future,可以用iscancelled判斷非同步任務是否取消,isdone判斷任務是否執行結束,get獲取返回結果。

SpringBoot使用thymeleaf模板

springboot開發的web專案contrller如何跳轉到前端頁面 據說,最流行的還是freemarker和velocity這兩種模板,我們這裡用spring官方推薦的thymeleaf模板 在建立好springboot專案的基礎上,進行如下配置 在pom中到thymeleaf的依賴 org....

Spring Boot使用Undertow做伺服器

1 建立spring boot專案,修改其pom.xml檔案 org.springframework.boot spring boot starter test org.springframework.boot spring boot starter web org.springframework....

SpringBoot快取使用

org.springframework.boot spring boot starter cache 專案使用springboot自帶的快取機制實現快取 redis快取 redis是一款記憶體快取記憶體資料庫 membase快取 memcache是乙個自由和開放源 高效能 分配的記憶體物件快取系統。...