最近花了二個月的業余時間重寫了我以前的通用數據訪問層, 由於是重寫,所以我給這個項目取了個新名字:ClownFish 如果需要了解ClownFish的使用方法,請點擊ClownFish 使用說明 ClownFish是什么? ClownFish 是我編寫的一個通用數據訪問層,設計它的目的 ...
說明:本文的第一版由於反對人數較多 推薦 反對數量是: , 我在 月 日刪除了博文內容,只留下一段簡單的內容。 既然分享技術也引來這么多的反對,那我就不分享了。 如果希望知道我的優化方法,請回復留下email地址。 但是讓我萬萬沒有想到的是:到 月 日為止,內容沒有了,推薦數量還翻了一倍。 為了表示對所有點過 推薦 的朋友表示感謝,我決定重寫本文。 在此,尤其要感謝那些 在沒有博文的情況下仍然願意 ...
2012-08-19 21:24 129 11326 推薦指數:
最近花了二個月的業余時間重寫了我以前的通用數據訪問層, 由於是重寫,所以我給這個項目取了個新名字:ClownFish 如果需要了解ClownFish的使用方法,請點擊ClownFish 使用說明 ClownFish是什么? ClownFish 是我編寫的一個通用數據訪問層,設計它的目的 ...
AOP面向切面編程:主要是通過切面類來提高代碼的復用,降低業務代碼的耦合性,從而提高開發效率。主要的功能是:日志記錄,性能統計,安全控制,事務處理,異常處理等等。 AOP實現原理:aop是通過cglib的動態代理實現的。 jdk動態代理:利用反射機制生成一個實現代理接口的匿名類,在調用 ...
在面試過程中面試官可能會問你關於鎖的知識,並讓你手寫一個死鎖的案例。下面我們來寫一個簡單的小Demo來實現一個死鎖。 死鎖案例 這段代碼 顯而易見會block住 來看結果 並且程序是一直運行着的狀態,那么程序出了這種狀況應該怎么去排查呢?對於簡單的案例我們直接 ...
前言 現在的前端門檻越來越高,不再是只會寫寫頁面那么簡單。模塊化、自動化、跨端開發等逐漸成為要求,但是這些都需要建立在我們牢固的基礎之上。不管框架和模式怎么變,把基礎原理打牢才能快速適應市場的變化。 ...
手寫一個簡單的死鎖代碼 死鎖原因 多個線程同時被阻塞,它們中的一個或者全部都在等待某個資源被釋放,而該資源又被其他線程鎖定,從而導致每一個線程都得等其它線程釋放其鎖定的資源,造成了所有線程都無法正常結束。這是從網上其他文檔看到的死鎖產生的四個必要條件: 1、互斥使用,即當資源被一個線程使用 ...
代碼效果: (1)運行 (2)點擊"點我彈出",結果如下圖 (3)再點擊x,回到界面(1)的效果,可以反復嘗試 ...
二分查找法。 排序算法 1.快速排序 2.冒泡排序 比較低端,不建議寫。 多線程 1.手寫一下生產者消費者模式,不要用BlockingQueue。 思路:可以使用wait(),notify() 2.手寫一個死鎖。 設計模式 設計模式的代碼詳情見: 設計模式代碼示例 1.手寫 ...
學習JavaWeb之后,只知道如何部署項目到Tomcat中,而並不了解其內部如何運行,底層原理為何,因此寫下此篇博客初步探究一下。學習之前需要知識鋪墊已列出:Tomcat目錄結構、HTTP協議、IO、網絡編程(未完善) 1. Tomcat(正版) 筆者稱自己手寫 ...