//鎖行為
public static r dowithlock(string key,object method,t param)catch (exception e) finally
} } //執行方法(當然,這裡面的if else 完全可通過策略模式去做到,只是這裡簡單描述)
private static r invoke(object method, t param) else if(method instanceof function) else if(method instanceof consumer)
return null;
}
這就是jdk8帶來的高階抽象的概念,將加鎖的操作視為物件,這就遮蔽了業務層面對於鎖的關注,完全只需要關注自己的實現即可,高度封裝。如果考慮更多的話,會考慮在dowithlock方法處throws 乙個lockexception,是為了丟擲獲取鎖,加鎖,解鎖過程當中的異常,這樣會提供給業務人員更多的情況考慮。 jedis操作封裝
為什麼我們要封裝jedis?1.每次使用需要釋放資源,2.每次使用需要轉換型別 3.多人開發,key儲存可能覆蓋 根據上述問題,封裝適合自己專案的操作類 針對1 2問題,我們簡單封裝jedisserver public class redisservice finally 設定物件 public b...
curl操作封裝
class curl curl簡單封裝 get post class curl curl setopt ch,curlopt url,url curl setopt ch,curlopt returntransfer,1 curl setopt ch,curlopt header,0 curl se...
mysql操作封裝
連線資料庫 function connect 記錄插入操作 function insert table,array keys values values mysql query sql return mysql insert id mysql insert id 返回上一步insert操作產生的id...