原创 Java併發編程基礎構建模塊(03)——阻塞隊列

        容器中還有一種數據結構十分有用,就是隊列,實現了FIFO(公平性)或者LIFO(處理最近發生的事)的操作,解決了很多數據傳輸,任務分配等方面問題。多線程環境下,如何更“高效、安全”是最主要的問題,好在JDK提供了Block

原创 Java併發編程基礎構建模塊(06)——高效緩存總結示例

        前面介紹完了併發編程的基礎構建模塊,也就是一些常用的基礎類,這裏做個簡單的例子,很常見的一個功能,緩存,緩存通常情況下看上去比較簡單,實際中各種緩存框架已經讓我們開發非常方便,但是假如自己新寫一個緩存功能呢,是否能做到高

原创 Java併發編程基礎構建模塊(04)——線程阻塞與中斷

        我們都知道線程始終處於以下幾種狀態之一,這裏我們說說阻塞(Blocked)和中斷阻塞:                  線程阻塞有很多原因,比如等待IO操作,等待獲得鎖,調用了sleep()、wait()、join()

原创 使用itext5做html轉pdf不全問題

        我們項目文書全部是PDF格式,生成的方法是將html文本轉換成PDF,使用iText5中的XmlWorker小組件,具體步驟如下:           用着一直都非常順利,後臺自動生成,非常快速、穩定、方便,可是就在

原创 jdbc查詢sybase參數過多問題

     公司的數據庫一直是sybase,用起來也挺好的,最新客戶現場出現一個問題,數據無法傳輸了,看日誌非常簡單,一下就定位到了原因。            很簡單,參數超過了2000個,因爲這個功能是根據主表的主鍵查詢子表,方法用的是

原创 使用反射破壞和管理單例模式

        Java中可以使用反射來創建類的實例,即使類的構造方法私有時,也可以創建,這樣就可能導致單例模式被破壞。比如下面非常純的單例模式: //非常普通的單例模式 public class Singleton { pr

原创 python變量和作用域

1、作用域介紹 python中的作用域分4種情況: L:local,局部作用域,即函數中定義的變量; E:enclosing,嵌套的父級函數的局部作用域,即包含此函數的上級函數的局部作用域,但不是全局的; G:globa,全局變量,就

原创 設計模式學習01—單例模式

1、動機與定義      系統中有些資源只能有一個,或者一個就夠,多個浪費。例如一個系統只能有一個窗口管理器或文件系統、一個系統只能有一個計時器或序號生成器、web系統只能有一個頁面計數器等等。此時,最好就需要把這些資源設置成有且僅有一

原创 設計模式學習02—工廠模式

1、動機與定義      我們在程序中使用一個對象時,需要new一下,如果需要設置其他值就再初始化一下。比如我要使用一個按鈕,手動new一個矩形按鈕,然後初始化一些值,如顯示文字,背景色等。 // 矩形按鈕

原创 $(document).ready() 與window.onload的區別

     最近項目中要做一個消息提醒功能,用戶登錄完成後,從右下角滑出一個消息模塊,類似qq彈出的廣告,不過是在瀏覽器中的,更大了一些而已。      開始的做法是在$(document).ready()中使用的是jQuery的sli

原创 設計模式6大原則(6):開閉原則

開閉原則 開閉原則:Open Closed Principle(OCP)        1988年,勃蘭特·梅耶(Bertrand Meyer)在他的著作《面向對象軟件構造(ObjectOriented Software Construc

原创 設計模式6大原則(4):接口隔離原則

接口隔離原則 接口隔離原則:Interface Segregation Principle(ISP)        這個原則從字面上就能知道什麼意思,隔離開接口,那什麼是接口,如何隔離呢?        首先確定接口定義,這裏的接口分爲2

原创 Java併發編程基礎構建模塊(01)——同步容器類

        同步容器類就是線程安全的容器類,Java中有些容器類天生就是線程安全的,如Vector,ConcurrentLinkedQueue,Hashtable等JDK早期就有的類,有些容器類則是線程不安全,如ArrayList,

原创 Java併發編程基礎構建模塊(05)——同步工具類

        前面介紹了同步容器類,阻塞隊列等,這裏說說同步工具類,同步工具類主要是根據自身的狀態來協調線程的控制流,阻塞隊列就可以作爲同步工具類,其他的同步工具類還包括:信號量(Semaphore)、閉鎖(Latch)、柵欄(Barr

原创 Java併發編程實戰筆記_併發任務執行

        任務執行有2種處理機制,串行執行和並行執行。         串行:同一時刻只能執行一個任務,程序簡單,安全性高,不涉及同步等情況,缺點也顯而易見,無法提高吞吐量和響應速度,適合任務數量很少並且執行時間很長時,或者只爲單個