在SpringBoot框架中實現多執行緒的方式

2021-09-29 07:33:22 字數 789 閱讀 5562

1.新增配置類

@configuration

@enableasync

public class asynctaskconfig implements asyncconfigurer

@override

public asyncuncaughtexceptionhandler getasyncuncaughtexceptionhandler()

}

一、無返回方式

步驟:1、寫乙個類,並且在類或方法上新增註解@async ,如果在類上新增註解,就代表這個類裡所有的方法都是非同步執行方法

2、寫乙個迴圈方法來呼叫這個非同步方法

@async

public void asynctest(int i)

二、有返回方式

需要用 future 來接收

使用asyncresult<>(t)返回

在future中:

使用isdone()方法 表明當執行緒執行完畢後

使用get()方法 表明獲取返回結果

@async

public futureasynctest() catch (interruptedexception e)

long endtime = new date().gettime();

long time = endtime - starttime;

return new asyncresult(time);

}

Spring Boot中redis的配置例項

redis是目前業界使用最廣泛的記憶體資料儲存,我們常用作資料快取。相比memcached,redis支援更豐富的資料結構,例如hash,list,set等,同時它也支援資料持久化。而且在乙個spring boot專案中,因為spring boot封裝自動化的特性,redis連線池的配置也相當簡單。...

Spring Boot中實現登入校驗簡單實現

在實際系統中開發時候通常會有許可權的一些校驗來保證系統的安全性,其中登入校驗就是常見的一種方式。如果乙個系統中的部分介面控制登入後才能訪問,如何實現呢,可以通過 的方式來實現。新增 類 註冊 並配置哪些介面需要進行攔截 step one 登入 註冊 configuration public clas...

SpringBoot下RabbitMq實現定時任務

定時任務場景 訂單下單15分鐘未付款自動關閉 延遲任務實現原理圖如下 根據上圖看出我們需要兩個佇列 一是死信佇列,訊息在裡面度過tll時間,二是處理佇列,訊息度過tll時間後進入該佇列 兩個交換機和路由 一是用來將訊息送入死信佇列,二是將訊息從死信佇列送到處理佇列 但是交換機其實可以用同乙個,也就是...