整合redis的pom依賴以及yml檔案,可以參考我之前的部落格,這裡不再贅述。
實現redis訊息佇列,用到的是list資料型別,所以首先修改之前的redis配置檔案:
1.reditemplateutil
/**
* list列表型別:先進後出棧形式,單個值插入
* @param key
* @param value
* @return*/
public boolean lpush(string key, object value)
catch
(exception e)
}/**
* 取值 -
* @param key 鍵
* @return*/
public object rpop(string key)
catch
(exception e)
}/**
* 檢視值
* @param key 鍵
* @param
start 開始
* @param
end 結束 0 到 -1代表所有值
* @return*/
public listlrange(string key, long start
, long end
)catch
(exception e)
}/**
* 清空所有資料
* @param
* @return*/
public void ltrim(string key,long var2, long var4)
catch
(exception e)
}}
2.入棧
//放入訊息佇列
boolean lpush = redistemplateutil.lpush(redis的快取key, 放入訊息佇列的內容)
;log.info(
"把請求演算法的資料放入redis,lpush結果為:{}"
,lpush)
;
3.出棧
//先判斷是否存在
listlrange = redistemplateutil.lrange(redis的快取key, 0,
-1);
if(lrange!=null && lrange.size(
)>0)
",lpop)
;
4.清空佇列內的資料
redistemplateutil.ltrim(redis的快取key,1,0)
;
說明:
核心的功能是以上三部,具體場景需要結合自己的業務來進行處理。
5分鐘搞定Schema
事先宣告 搞定不是精通,只是能夠運用!其實schema很簡單,之前寫過dtd,比dtd學習成本還低!最近做的專案基於檔案系統的,一堆的xml檔案,所以想寫個驗證,也方便ide操作,既然推薦schema,那就用schema d 不廢話,看xml檔案。ivan hihello 這個應該算是個比較典型的x...
5分鐘搞定快速排序
直接切入主題,快速排序分為兩過程 挖抗填數 分治法 先說下分治法,顧名思義就是 分而治之 的核心思想。簡單舉個例子體會一下 現在有100個人需要按照身高排成一列。首先,定個身高基準1.7m 定得太高和太低都會打破平衡 高與1.7m的都站在一列的右端,低於1.7m的都站在一列的左端。1.7m即為左右端...
5分鐘搞定快速排序
首先找到陣列中的乙個基準值 通常是中間值 遍歷陣列,如果比基準值小就放到左邊,比基準值大放到右邊 以基準值左右兩邊的子列作為新數列,不斷重複第一步和第二步 迭代法 def quick sort arr if len arr 2 return arr mid arr len arr 2 基準值 lef...