ehcache 配置
name
="systembasecache"
maxelementsinmemory
="500"
maxelementsondisk
="500"
diskspoolbuffersizemb
="5"
overflowtodisk
="true"
eternal
="false"
timetoidleseconds
="300"
timetoliveseconds
="3600"
memorystoreevictionpolicy
="lfu"
/>
maxelementsinmemory
="1000"
overflowtodisk
="true"
eternal
="false"
memorystoreevictionpolicy
="lru"
maxelementsondisk
="10000"
diskexpirythreadintervalseconds
="600"
timetoidleseconds
="120"
timetoliveseconds
="120"
diskpersistent
="false"
/>
從上面的配置我們可以看出,ehcache設定失效時間五分鐘,當放入元素超過五分鐘,ehcache會根據自己的清理策略將失效元素清理。
後台**
//從快取中獲取驗證碼
string oldcode =
(string) cacheservice.
get(cacheservicei.system_base_cache, paras.
getphonenum()
);//如果沒有,則傳送
if(oldcode == null )
else
else
}
private
void
sendcode
(string phonenum)
", code)
; string sendnote = sendmessageutil.
sendnote
(phonenum, msg)
;//加入快取
cacheservice.
put(cacheservicei.system_base_cache, phonenum,code)
; cacheservice.
put(cacheservicei.system_base_cache, phonenum+safetytrainingutils.codedate,dateutils.datetimeformat.
format
(new
date()
));}
邏輯如下:當使用者請求獲取驗證碼,從快取中根據手機號為key取驗證碼,如果沒有,則傳送驗證碼,如果有,根據手機號+自定義key取出驗證碼的放入時間,判斷時間是否大於一分鐘,如果大於一分鐘則傳送,反之不傳送。在傳送驗證碼的時候將驗證碼和時間同時存入快取。
附計算兩個時間差**
/**
* 計算兩個日期的差
* @param enddate
* @param nowdate
* @return
* @description
* @author fenglu
* @date 2023年7月2日 下午3:40:35
*/public
static
intgetdatepoor
(char flag, date enddate, date nowdate)
//小時差
if(flag ==
'h')
//分鐘差
if(flag ==
'm')
//秒差
if(flag ==
's')
return0;
// long ns = 1000;
// 獲得兩個時間的毫秒時間差異
//long diff = enddate.gettime() - nowdate.gettime();
// 計算差多少天
//long day = diff / nd;
// 計算差多少小時
//long hour = diff % nd / nh;
// 計算差多少分鐘
//long min = diff % nd % nh / nm;
// 計算差多少秒//輸出結果
// long sec = diff % nd % nh % nm / ns;
//return day + "天" + hour + "小時" + min + "分鐘";
}
簡訊傳送功能暫無 驗證碼實現
1.gd庫 2.建立影象步驟 1 建立畫布 就是在記憶體中開闢一塊臨時區域,用於儲存圖影象資訊 2 繪製影象 使用各種函式設定影象顏色,背景,填充畫筆,繪製圖形等 3 輸出圖形 以某種格式儲存到伺服器或者輸出到瀏覽器顯示給使用者。注意 直接輸出之前一定要用header 告訴瀏覽器以影象格式來處理該輸...
15 分鐘用 ML 破解乙個驗證碼系統
人人都恨驗證碼 那些惱人的,顯示著你在登陸某 前得輸入的文字。設計驗證碼的目的是,通過驗證你是真實的人來避免電腦自動填充 但是隨著深度學習和計算機視覺的興起,現在驗證碼常常易被攻破。加vx tanzhouyiwan 免費的python學習資料一套我拜讀了 adrian rosebrock 寫的 de...
php驗證碼zhuc php實現驗證碼製作
php實現驗證碼製作 首先,看一張圖了解驗證碼生成的過程。1 生成驗證碼底圖 2 驗證碼內容 3 生成驗證碼 4 對比校驗 驗證碼實現的核心技術分析 a 底圖的 實現,並新增干擾元素 b 生成驗證內容 c 驗證內容儲存在服務端 d 驗證內容的校驗 下面看 實現的過程 這段 實現了產生 隨機數字,隨機...