程式啟動入口: org.apache.catalina.startup.bootstrap的main方法,其最終會呼叫到org.apache.catalina.startup.catalina的load()和start()方法。
bootstrap中的關鍵**:
public static void main(string args) catch (throwable t)
}try
if (command.equals("startd")) else if (command.equals("stopd")) else if (command.equals("start")) else if (command.equals("stop")) else
} catch (throwable t)
}
catalina中load()方法的關鍵**:
// create and execute our digester
digester digester = createstartdigester();
try catch (exception e)
乙個是建立createstartdigester
(),另外乙個是對
digester
的解析。只要把這幾個呼叫搞懂了,
tomcat
的結構基本上就出來了。
tomcat原始碼閱讀筆記一
container全部啟動後,connector接著啟動,connector包含乙個protocolhandler,protocolhandler目前有三種協議 bio nio apr,可以按需求啟用相應的協議。每個協議protocolhandler包含乙個endpoint,在endpoint中開啟...
mysql 原始碼閱讀入口
mysql原始碼太多,初次看到不免讓人沒有頭緒,如果根據特定需求,分模組的去閱讀分析,查詢特定功能如何實現之類的需求,可以從有限的幾個入口看起,有兩個主要入口 伺服器啟動,客戶端請求處理。市面上的書大部分都是通過客戶端請求處理來講起如何閱讀mysql原始碼,舉的例子通過select 查詢,如 深入理...
Tomcat原始碼閱讀系列
再過十來天,就要不再是大三,而步入大四的殿堂了,求職面試的事會接踵而至,鑑於春招時的教訓,自己的學習比較缺乏系統性地整理,向他人交流自己所掌握的技術能力仍有待提高,為此將自己閱讀tomcat原始碼的過程記錄一下,並分享到部落格中,讓有同樣興趣的同學一起交流討論。注 如沒有特別說明的地方,tomcat...