原创 servlet生命週期和原理

Servlet生命週期分爲三個階段:   1,初始化階段  調用init()方法   2,響應客戶請求階段  調用service()方法   3,終止階段  調用destroy()方法 Servlet初始化階段:   在下

原创 finally一定會執行嗎?

在Sun Tutorial中有這樣一句話:The finally block always executes when the try block exits. This ensures that the finally block i

原创 String,StringBuffer,StringBuilder之間的區別和聯繫

tring是字符串常量。StringBuffer是字符串變量 ,線程安全。StringBuilder是字符串變量,線程不安全。 速度:String<StringBuffer<StringBuilder 爲什麼String速度最慢呢?

原创 單例模式深度詳解

在GoF的23種設計模式中,單例模式是比較簡單的一種。然而,有時候越是簡單的東西越容易出現問題。下面就單例設計模式詳細的探討一下。   所謂單例模式,簡單來說,就是在整個應用中保證只有一個類的實例存在。就像是Java Web中的ap

原创 JavaGC機制

 1.Java中finalize()的作用一主要是清理那些對象(並非使用new)獲得了一塊“特殊”的內存區域。程序員可以用finalize()來操作。 程序員都瞭解初始化的重要性,但常常會忘記同樣也重要的清理工作。畢竟,誰需要清理一個i

原创 Spring面試理解

spring 的優點? 1.降低了組件之間的耦合性 ,實現了軟件各層之間的解耦 2.可以使用容易提供的衆多服務,如事務管理,消息服務等 3.容器提供單例模式支持 4.容器提供了AOP技術,利用它很容易實現如權限攔截,運行期監控等功能 5.

原创 Java 類加載

  Java類加載原理解析                                         1       基本信息 摘要: 每個java開發人員對java.lang.ClassNotFoundExcetpion

原创 深入理解Java內存模型之系列篇

深入理解Java內存模型(一)——基礎 併發編程模型的分類 在併發編程中,我們需要處理兩個關鍵問題:線程之間如何通信及線程之間如何同步(這裏的線程是指併發執行的活動實體)。通信是指線程之間以何種機制來交換信息。在命令式編程中,線

原创 Java中的static關鍵字解析

Java中的static關鍵字解析   static關鍵字是很多朋友在編寫代碼和閱讀代碼時碰到的比較難以理解的一個關鍵字,也是各大公司的面試官喜歡在面試時問到的知識點之一。下面就先講述一下static關鍵字的用法和平常容易誤解的地方

原创 各種顏色十六進制代碼表

< xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />  紅色和粉紅色,以及它們的16進制代碼。 0x990033 0xC

原创 網絡爬蟲

網絡爬蟲是捜索引擎抓取系統的重要組成部分。爬蟲的主要目的是將互聯網上的網頁下載到本地形成一個或聯網內容的鏡像備份。這篇博客主要對爬蟲以及抓取系統進行一個簡單的概述。 一、網絡爬蟲的基本結構及工作流程     一個通用的網絡爬蟲的框架如圖

原创 Struts2的工作原理

  上圖來源於Struts2官方站點,是Struts 2 的整體結構。  一個請求在Struts2框架中的處理大概分爲以下幾個步驟  1 客戶端初始化一個指向Servlet容器(例如Tomcat)的請求  2 這個請求經過一系列的

原创 get和post區別

今天看到了一些關於討論post和get的區別,特貼出來和大家分享:   post和get的區別 post 地址欄不會出現一大串?bjnghfgreygt這樣的東西 如果是get,就會出現了 1、Get 方法通過 URL 請求來

原创 Java類加載原理解析

1       基本信息 摘要: 每個java開發人員對java.lang.ClassNotFoundExcetpion這個異常肯定都不陌生,這背後就涉及到了java技術體系中的類加載。Java的類加載機制是java技術體系中比較核

原创 throw 和 throws 的區別

系統自動拋出的異常 所有系統定義的編譯和運行異常都可以由系統自動拋出,稱爲標準異常,並且 Java 強烈地要求應用程序進行完整的異常處理,給用戶友好的提示,或者修正後使程序繼續執行。   語句拋出的異常  用戶程序自定義的異常和應用