Uphea 是開源 web 應用示例,基于 Jodd 框架。
單例模式是限制了一個類只能有一個實例,對象池模式則是限制一個類實例的個數。對象池類就像是一個對象管理員,它以Static列表(也就是裝對象的池子)的形式存存儲某個實例數受限的類的實例,每一個實例還要加一個標記,標記該實例是否被占用。當類初始化的時候,這個對象池就被初始化了,實例就被創建出來。然后,用戶可以向這個類索取實例,如果池中所有的實例都已經被占用了,那么拋出異常。
通過程序來生成代碼是Java平臺的固有特性。當Java程序編譯的時候,Java編譯器生成的是字節碼而不是可執行程序。字節碼是Java特有的格式,它本身并沒有太大的用處。為了能執行字節碼,它會在運行時被JVM的just-in-time編譯器翻譯成本地的機器代碼。
ThreadLocal并不是一個Thread,而是一個線程的局部變量,當使用ThreadLocal維護變量時,ThreadLocal為每個使用該變量的線程提供獨立的變量副本,所以每個線程都可以獨立的改變自己的副本,而不會影響其他線程所對應的副本。
xlinecode是用Struts、Spring和Hibernate開發的開源論壇
Java IO流學習總結
java 語言中,jvm雖然會自動回收垃圾。但是像數組,對象,最好不用的設置為null;
ThreadLocal 是什么呢?其實ThreadLocal并非是一個線程的本地實現版本,它并不是一個Thread,而是thread local variable(線程局部變量)。也許把它命名為ThreadLocalVar更加合適。線程局部變量(ThreadLocal)其實的功用非常簡單, 就是為每一個使用該變量的線程都提供一個變量值的副本,是每一個線程都可以獨立地改變自己的副本,而不會和其它線程的副本沖突。
Java提供的API和前面幾篇文章中涉及到的技術已經對字符串的支持已經很完善了,多使用API中提供的各種方法,并且在細節上注意效率問題,會讓我們對于字符串的處理更加得心應手,下面列舉了一些常用的API,更詳細的用法和更多的重載方法可以查閱JDK文檔。
Java使用了一種自定義的、可擴展的方法來輸出日志。雖然Java通過java.util.logging包提供了一套基本的日志處理API,但你可以很輕松的使用一種或者多種其它日志解決方案。這些解決方案盡管使用不同的方法來創建日志數據,但它們的最終目標是一樣的,即將日志從你的應用程序輸出到目標地址。
JDeli 是一個 Java 的圖像處理庫,支持 JPEG/JPEG2000, TIFF 和 PNG。其速度和 JAI/ImageIO 一樣快,在某些場景下更快。占用較少內存,使用還非常簡單。
Spring Remoting 的 Thrift 實現(Java)。
追求高內聚highly cohesive 和松耦合 loosely couple 的解決方案是面向對象設計基本核心原則。這里列出OO設計中十大原則。
Java內存模型規范了Java虛擬機與計算機內存是如何協同工作的。Java虛擬機是一個完整的計算機的一個模型,因此這個模型自然也包含一個內存模型——又稱為Java內存模型。 如果你想設計表現良好的并發程序,理解Java內存模型是非常重要的。Java內存模型規定了如何和何時可以看到由其他線程修改過后的共享變量的值,以及在必須時如何同步的訪問共享變量。
Rapidoid 是個簡單,強大,安全的 Java Web 框架,俗稱 ”少跟我裝蒜“ 框架。
Java常見異常及解釋
本文章首發于 個人博客 ,鑒于sf博客樣式具有賞心悅目的美感,遂發表于此,供大家學習、批評。 繼上一篇文章 Java集合框架綜述 后,今天正式開始分析具體集合類的代碼,首先以既熟悉又陌生的 HashMap 開始。
代碼優化,一個很重要的課題。可能有些人覺得沒用,一些細小的地方有什么好修改的,改與不改對于代碼的運行效率有什么影響呢?這個問題我是這么考 慮的,就像大海里面的鯨魚一樣,它吃一條小蝦米有用嗎?沒用,但是,吃的小蝦米一多之后,鯨魚就被喂飽了。代碼優化也是一樣,如果項目著眼于盡快無BUG 上線,那么此時可以抓大放小,代碼的細節可以不精打細磨;但是如果有足夠的時間開發、維護代碼,這時候就必須考慮每個可以優化的細節了,一個一個細小的優 化點累積起來,對于代碼的運行效率絕對是有提升的。
先是總覽了Spring integration,它是一種便捷的事件驅動消息框架;你可以用它協同消息、通道、適配器、網關。接著介紹了如何利用Spring Integration實現ActvieMQ和JMS,隨后簡短地介紹了針對輕量級負載和重量級負載的多個應用工作流程。
Java常見錯誤列表: 找不到符號(symbol) 類X是public的,應該被聲明在名為X.java的文件中 缺失類、接口或枚舉類型