原创 Comparator 與 Comparable

 說道Comparator 與 Comparable接口,就不得不說一下Collections和Arrays這兩個類,他們分別爲集合和數組提供一些查找、排序的操作。那麼就以Collections爲例,它有一個sort(),方法可以試下集合

原创 'Building workspace' has encountered a problem.

 每次MyEclipse工作空間報錯如下:'Building workspace' has encountered a problem.  解決方法:刪除工程目錄下\.metadata\.plugins\org.eclipse.core

原创 當singlon遇到Serializable

    上面一篇文章中提到了單例模式,那麼當單例模式遇到了序列化,會怎樣呢? 首先我們看一下,要生成一個新的對象有幾種方式: 1.       通過new 創建實例 2.       調用clone() 3.       通過反射 4. 

原创 Spring中的AOP配置

Spring中的配置文件,一般情況下命名爲applicationContext.xml,myeclipse會自動用spring編輯器進行編輯。 加載順序: 1、首先讀取配置配置文件,掃描所有的配置的bean對象,將其實例化。(因爲懶加載

原创 有意思的位運算

筆試的時候遇到的幾個比較有意思的關於位運算的題。   問題一 請編寫一個算法,不用任何額外變量交換兩個整數的值。 給定一個數組num,其中包含兩個值,請不用任何額外變量交換這兩個值,並將交換後的數組返回。 測試樣例: [1,2] 返回

原创 動態規劃算法(後附常見動態規劃爲題及Java代碼實現)

一、基本概念     動態規劃過程是:每次決策依賴於當前狀態,又隨即引起狀態的轉移。一個決策序列就是在變化的狀態中產生出來的,所以,這種多階段最優化決策解決問題的過程就稱爲動態規劃。 二、基本思想與策略     基本思想與分治法類似,也是

原创 併發之事務隔離

1.數據庫的併發問題   數據庫帶來的併發問題包括:    (1)丟失更新     (2)髒讀     (3)非重複讀     (4)覆蓋更新      (5)幻象讀  丟失更新     撤銷一個事務時,把其他事務已提交的更新數據覆蓋(A

原创 共享鎖與排它鎖

共享鎖【S鎖】 又稱讀鎖,若事務T對數據對象A加上S鎖,則事務T可以讀A但不能修改A,其他事務只能再對A加S鎖,而不能加X鎖,直到T釋放A上的S鎖。這保證了其他事務可以讀A,但在T釋放A上的S鎖之前不能對A做任何修改。 排他鎖【X鎖】

原创 Java transient關鍵字

   最近看JDK源碼,發現很多的變量用 transient修飾,竟然不知道這個 transient到底是什麼意思,不覺讓我這個自認爲精通Java的人驚出一身冷汗,趕緊查了一下有關 transient的只是,總是又長知識了,活到老學到老

原创 Synchroniazed和Lock實現生產者--消費者

使用Synchroniazed、wait、notify()實現 代碼如下:public class Test { private static int count = 10; private static Object l

原创 數據庫之三大範式

第一範式(1NF):屬性不可分 在前面我們已經介紹了屬性值的概念,我們說,它是“不可分的”。而第一範式要求屬性也不可分。那麼它和屬性值不可分有什麼區別呢?給一個例子: name address age 小明 山東省濟寧市 13 小紅 遼寧

原创 Struts2 框架的簡單實現——輕鬆理解Struts原理

        Struts2因該算是目前JavaWeb中MVC框架中最火的一個了,我第一次接觸框架是在大學時期,那時候第一次學的還是Struts1框架,當時想的是:既然有1和2那就從低版本的開始學吧!當時自己想當然的將Struts2當成

原创 java中PriorityQueue優先級隊列的使用

PriorityQueue是在Java SE 5.0中,引入了的Collection API,他與傳統queue不同的是,PriorityQueue並非是FIFO的隊列,PriorityQueue會對裏面的元素按照優先級進行排序。他是如

原创 單例模式

單例模式,顧名思義就是在內存中只有一個類的對象實例,對於要佔用重要系統資源的對象,我們常採用單例模式,比如Web中的Servlet,Hibernate中的sessionFectory等都是採用的單例模式。 單例模式有多重實現方式,但這些實

原创 JAVA多態的實現方式

多態從實現的角度分爲:靜態多態和動態多態       靜態多態也叫做編譯時多態       動態多態也叫做運行時多態   1.靜態的多態: 函數重載是靜態的多態的一種實現形式: 舉例說明: class MethodOverloading