原创 LockSupport使用及源碼詳解

LockSupport使用及源碼詳解 在講了一批併發工具後,突然想起LockSupport類了,這個工具類我也很少用,所以這次寫了個小demo後,決定也寫一篇文章記錄一下,以下就是記錄過程。 LockSupport用法 在網上隨

原创 flask使用Blueprint進行多模塊應用的編寫

flask使用Blueprint進行多模塊應用的編寫 1、blueprint 2、分模塊後的結構 3、業務模塊 4、運行 5、總結 1、blueprint 在使用flask進行一個項目編寫的時候,可能會有許多個模塊,如

原创 CopyOnWriteArrayList源碼詳解

CopyOnWriteArrayList源碼詳解 最近在一個代碼優化中使用到CopyOnWriteArrayList,想起這個java容器知道使用特性是讀寫分離,在每次寫入時都複製一個新的list進行操作,但是沒有具體的看過其源碼

原创 ThreadLocal詳解(二)

ThreadLocal詳解(二) 上一篇文章講了ThreadLocal的get、set、resize等方法的源碼,但是對於一些單獨的方法例如cleanSomeSlots、expungeStaleEntry並沒有講述,這一節就是要講

原创 ThreadLocal詳解

ThreadLocal詳解 ThreadLocal平常用的還是挺多的,但是對於內部實現一直沒有仔細瞭解過,這幾天在寫一個工程的時候,用到了ThreadLocal保存上下文,突然想到了ThreadLocal一些實現細節上的問題,看

原创 Hash尋址詳解

Hash尋址詳解 最近在使用ThreadLocal保存上下文信息,原本準備寫ThreadLocal原理以及源碼詳解,然後在偶爾中看到關於ThreadLocal中的hash尋址方式,與HashMap中尋址方式不同,於是決定先寫一篇講

原创 MyBatis源碼分析之Script用法詳解

MyBatis源碼分析之Script用法詳解 在上一篇文章中講到MyBatis的#{paras}和${paras}用法,在裏面提到在解析sql組裝成SqlSource對象時,會判斷當前sql是否是動態類型,然後裏面有一個對sql中是否

原创 MyBatis源碼分析之防SQL注入

MyBatis源碼分析之防SQL注入 這一節來講下MyBatis的防SQL注入,SQL注入大多數也會比較清楚,就是SQL參數對應的字段值時插入混合SQL,如 ** username = or 1= 1** 這種,如果有更惡劣的,帶上d

原创 Deque用法及原理講解

Deque用法及原理講解 最近想着對現有知識點進行一個總結,決定從集合開始,想想便從Deque開始吧,Deque用的比較少,但是還是一個功能十分強大的隊列,這種雙向隊列即可以支持先進後出,也能支持先進先出的格式,相當於同時實現了St

原创 MyBatis源碼分析之@SelectProvider註解使用詳解

MyBatis源碼分析之@SelectProvider註解使用詳解 之前講了MyBatis的配置、plugin、Select查詢,還有@MapKey註解的使用與原理,還有返回@ResultMap等等,我原想直接從MyBatis的緩存開

原创 MyBatis源碼分析之@ResultMap註解詳解

MyBatis源碼分析之@ResultMap註解詳解 在前一篇文章講**@MapKey註解時,我原想將@ResultMap註解也一起拿出來說一下,但是發現@ResultMap解析加載源碼非常多,想想就不在一篇文章中講了,分開單獨來說,

原创 MyBatis中@MapKey使用詳解

MyBatis中@MapKey使用詳解 我們在上一篇文章中講到在Select返回類型中是返回Map時,是對方法中是否存在註解@MapKey,這個註解我也是第一次看到,當時我也以爲是純粹的返回單個數據對象的Map類型,但是發現還是有些不

原创 Mybatis源碼分析之Select返回數據分析

Mybatis源碼分析之Select返回數據分析 在之前的一篇文章中分析了@Select註解的使用方法,在查詢方法中我們知可以返回Map類型,也可以返回指針,或者是list集合,或是單條記錄,今天就對這幾種返回做一個源碼分析。 Sel

原创 MyBatis plugin的使用與源碼解析

MyBatis plugin的使用與源碼解析 這一節來講下Mybatis中的plugin的使用,plugin作爲對執行期間對Executor、StatementHandler的一種增強等等,我見過用的最多的應該就是Mybatis的分頁

原创 MyBatis註解@Select、@Update分析

MyBatis註解@Select、@Update分析 前面幾篇文章分別分析了Mybatis中的Configuration的配置信息,MyBatis中的Mapper調用等等,在分析配置信息時只是講了如何解析xml中的sql查詢,但是並沒