深入剖析Tomcat

2021-04-16 19:20 更新

深入剖析Tomcat


Budi Kurniawan,Paul Deck 著,曹旭東 譯

  • 出版社: 機(jī)械工業(yè)出版社
  • ISBN:9787111369974
  • 版次:1
  • 商品編碼:10913619
  • 品牌:機(jī)工出版
  • 包裝:平裝
  • 開本:16開
  • 出版時(shí)間:2012-02-01
  • 用紙:膠版紙
  • 頁數(shù):342


點(diǎn)此購買


內(nèi)容簡(jiǎn)介

《深入剖析Tomcat》深入剖析Tomcat4和Tomcat5中的每個(gè)組件,并揭示其內(nèi)部工作原理。通過學(xué)習(xí)本書,你將可以自行開發(fā)Tomcat組件,或者擴(kuò)展已有的組件。Tomcat是目前比較流行的Web服務(wù)器之一。作為一個(gè)開源和小型的輕量級(jí)應(yīng)用服務(wù)器,Tomcat易于使用,便于部署,但Tomcat本身是一個(gè)非常復(fù)雜的系統(tǒng),包含了很多功能模塊。這些功能模塊構(gòu)成了Tomcat的核心結(jié)構(gòu)?!渡钊肫饰鯰omcat》從最基本的HTTP請(qǐng)求開始,直至使用JMX技術(shù)管理Tomcat中的應(yīng)用程序,逐一剖析Tomcat的基本功能模塊,并配以示例代碼,使讀者可以逐步實(shí)現(xiàn)自己的Web服務(wù)器。

作者簡(jiǎn)介

Budi Kurniawan是《Java for Web With Servlets, JSP and EJB》的作者,同時(shí)也是一位IT咨詢師,主要研究方向包括互聯(lián)網(wǎng)與面向?qū)ο蟪绦蛟O(shè)計(jì)。除了其他一些計(jì)算機(jī)圖書,他已經(jīng)在10多種出版物上發(fā)表了約100篇文章,其中包括一些享有盛譽(yù)的Java雜志,如《Java.net》、《JavaPro》、《JavaWorld》等。Budi也是Brainysoftware.com的應(yīng)用程序File Upload Bean的作者,在世界范圍內(nèi)很多公司都獲得授權(quán)并使用該應(yīng)用程序。
Paul Deck是一個(gè)有15多年經(jīng)驗(yàn)的IT架構(gòu)師,參與了很多項(xiàng)目的開發(fā),這些項(xiàng)目遍布在美國(guó)、加拿大、中國(guó)和澳大利亞。他喜歡旅行,對(duì)網(wǎng)絡(luò)、互聯(lián)網(wǎng)編程、設(shè)計(jì)模式和用戶界面交互設(shè)計(jì)非常感興趣。

目錄

譯者序
前言
第1章 一個(gè)簡(jiǎn)單的Web服務(wù)器
1.1 HTTP
1.1.1 HTTP請(qǐng)求
1.1.2 HTTP響應(yīng)
1.2 Socket類
1.3 應(yīng)用程序
1.3.1 HttpServer類
1.3.2 Request類
1.3.3 Response類
1.3.4 運(yùn)行應(yīng)用程序
1.4 小結(jié)

第2章 一個(gè)簡(jiǎn)單的servlet容器
2.1 javax.servlet.Servlet接口
2.2 應(yīng)用程序
2.2.1 HttpServer1類
2.2.2 Request類
2.2.3 Response類
2.2.4 StaticResourceProcessor類
2.2.5 servletProcessor1類
2.2.6 運(yùn)行應(yīng)用程序
2.3 應(yīng)用程序
2.4 小結(jié)

第3章 連接器
3.1 StringManager類
3.2 應(yīng)用程序
3.2.1 啟動(dòng)應(yīng)用程序
3.2.2 HttpConnector類
3.2.3 創(chuàng)建HttpRequest對(duì)象
3.2.4 創(chuàng)建HttpResponse對(duì)象
3.2.5 靜態(tài)資源處理器和servlet處理器
3.2.6 運(yùn)行應(yīng)用程序
3.3 小結(jié)

第4章 Tomcat的默認(rèn)連接器
4.1 HTTP 1.1的新特性
4.1.1 持久連接
4.1.2 塊編碼
4.1.3 狀態(tài)碼100的使用
4.2 Connector接口
4.3 HttpConnector類
4.3.1 創(chuàng)建服務(wù)器套接字
4.3.2 維護(hù)HttpProcessor實(shí)例
4.3.3 提供HTTP請(qǐng)求服務(wù)
4.4 HttpProcessor類
4.5 Request對(duì)象
4.6 Response對(duì)象
4.7 處理請(qǐng)求
4.7.1 解析連接
4.7.2 解析請(qǐng)求
4.7.3 解析請(qǐng)求頭
4.8 簡(jiǎn)單的Container應(yīng)用程序
4.9 小結(jié)

第5章 servlet容器
5.1 Container接口
5.2 管道任務(wù)
5.2.1 Pipeline接口
5.2.2 Valve接口
5.2.3 ValveContext接口
5.2.4 Contained接口
5.3 Wrapper接口
5.4 Context接口
5.5 Wrapper應(yīng)用程序
5.5.1 ex05.pyrmont.core.SimpleLoader類
5.5.2 ex05.pyrmont.core.SimplePipeline類
5.5.3 ex05.pyrmont.core.SimpleWrapper類
5.5.4 ex05.pyrmont.core.SimpleWrapperValve類
5.5.5 ex05.pyrmont.valves.ClientIPLoggerValve類
5.5.6 ex05.pyrmont.valves.HeaderLoggerValve類
5.5.7 ex05.pyrmont.startup.Bootstrap
5.5.8 運(yùn)行應(yīng)用程序
5.6 Context應(yīng)用程序
5.6.1 ex05.pyrmont.core.SimpleContextValve類
5.6.2 ex05.pyrmont.core.SimpleContextMapper類
5.6.3 ex05.pyrmont.core.SimpleContext類
5.6.4 ex05.pyrmont.startup.Bootstrap
5.6.5 運(yùn)行應(yīng)用程序
5.7 小結(jié)

第6章 生命周期
6.1 Lifecycle接口
6.2 LifecycleEvent類
6.3 LifecycleListener接口
6.4 LifecycleSupport類
6.5 應(yīng)用程序
6.5.1 ex06.pyrmont.core.SimpleContext類
6.5.2 ex06.pyrmont.core.SimpleContextLifecycleListener類
6.5.3 ex06.pyrmont.core.SimpleLoader類
6.5.4 ex06.pyrmont.core.SimplePipeline類
6.5.5 ex06.pyrmont.core.SimpleWrapper類
6.5.6 運(yùn)行應(yīng)用程序
6.6 小結(jié)

第7章 日志記錄器
7.1 Logger接口
7.2 Tomcat的日志記錄器
7.2.1 LoggerBase類
7.2.2 SystemOutLogger類
7.2.3 SystemErrLogger類
7.2.4 FileLogger類
7.3 應(yīng)用程序
7.4 小結(jié)

第8章 載入器
8.1 Java的類載入器
8.2 Loader接口
8.3 Reloader接口
8.4 WebappLoader類
8.4.1 創(chuàng)建類載入器
8.4.2 設(shè)置倉庫
8.4.3 設(shè)置類路徑
8.4.4 設(shè)置訪問權(quán)限
8.4.5 開啟新線程執(zhí)行類的重新載入
8.5 WebappClassLoader類
8.5.1 類緩存
8.5.2 載入類
8.5.3 應(yīng)用程序
8.6 運(yùn)行應(yīng)用程序
8.7 小結(jié)

第9章 Session管理
9.1 Session對(duì)象
9.1.1 Session接口
9.1.2 StandardSession類
9.1.3 StandardSessionFacade類
9.2 Manager
9.2.1 Manager接口
9.2.2 ManagerBase類
9.2.3 StandardManager類
9.2.4 PersistentManagerBase類
9.2.5 PersistentManager類
9.2.6 DistributedManager類
9.3 存儲(chǔ)器
9.3.1 StoreBase類
9.3.2 FileStore類
9.3.3 JDBCStore類
9.4 應(yīng)用程序
9.4.1 Bootstrap類
9.4.2 SimpleWrapperValve類
9.4.3 運(yùn)行應(yīng)用程序
9.5 小結(jié)

第10章 安全性
10.1 領(lǐng)域
10.2 GenericPrincipal類
10.3 LoginConfig類
10.4 Authenticator接口
10.5 安裝驗(yàn)證器閥
10.6 應(yīng)用程序
10.6.1 ex10.pyrmont.core.SimpleContextConfig類
10.6.2 ex10.pyrmont.realm.SimpleRealm類
10.6.3 ex10.pyrmont.realm.SimpleUserDatabaseRealm
10.6.4 ex10.pyrmont.startup.Bootstrap1類
10.6.5 ex10.pyrmont.startup.Bootstrap2類
10.6.6 運(yùn)行應(yīng)用程序
10.7 小結(jié)

第11章 StandardWrapper
11.1 方法調(diào)用序列
11.2 SingleThreadModel
11.3 StandardWrapper
11.3.1 分配servlet實(shí)例
11.3.2 載入servlet類
11.3.3 ServletConfig對(duì)象
11.3.4 servlet容器的父子關(guān)系
11.4 StandardWrapperFacade類
11.5 StandardWrapperValve類
11.6 FilterDef類
11.7 ApplicationFilterConfig類
11.8 ApplicationFilterChain類
11.9 應(yīng)用程序
11.10 小結(jié)

第12章 StandardContext類
12.1 StandardContext的配置
12.1.1 StandardContext類的構(gòu)造函數(shù)
12.1.2 啟動(dòng)StandardContext實(shí)例
12.1.3 invoke()方法
12.2 StandardContextMapper類
12.3 對(duì)重載的支持
12.4 backgroundProcess()方法
12.5 小結(jié)

第13章 Host和Engine
13.1 Host接口
13.2 StandardHost類
13.3 StandardHostMapper類
13.4 StandardHostValve類
13.5 為什么必須要有一個(gè)Host容器
13.6 應(yīng)用程序1
13.7 Engine接口
13.8 StandardEngine類
13.9 StandardEngineValve類
13.10 應(yīng)用程序2
13.11 小結(jié)

第14章 服務(wù)器組件和服務(wù)組件
14.1 服務(wù)器組件
14.2 StandardServer類
14.2.1 initialize()方法
14.2.2 start()方法
14.2.3 stop()方法
14.2.4 await()方法
14.3 Service接口
14.4 StandardService類
14.4.1 connector和container
14.4.2 與生命周期有關(guān)的方法
14.5 應(yīng)用程序
14.5.1 Bootstrap類
14.5.2 Stopper類
14.5.3 運(yùn)行應(yīng)用程序
14.6 小結(jié)

第15章 Digester庫
15.1 Digester庫
15.1.1 Digester類
15.1.2 Digester庫示例1
15.1.3 Digester庫示例2
15.1.4 Rule類
15.1.5 Digester庫示例3:使用RuleSet
15.2 ContextConfig類
15.2.1 defaultConfig()方法
15.2.2 applicationConfig()方法
15.2.3 創(chuàng)建Web Digester
15.3 應(yīng)用程序
15.4 小結(jié)

第16章 關(guān)閉鉤子
16.1 關(guān)閉鉤子的例子
16.2 Tomcat中的關(guān)閉鉤子
16.3 小結(jié)

第17章 啟動(dòng)Tomcat
17.1 Catalina類
17.1.1 start()方法
17.1.2 stop()方法
17.1.3 啟動(dòng)Digester對(duì)象
17.1.4 關(guān)閉Digester對(duì)象
17.2 Bootstrap類
17.3 在Windows平臺(tái)上運(yùn)行Tomcat
17.3.1 如何編寫批處理文件
17.3.2 catalina.bat批處理文件
17.3.3 在Windows平臺(tái)上啟動(dòng)Tomcat
17.3.4 在Windows平臺(tái)上關(guān)閉Tomcat
17.4 在Linux平臺(tái)上運(yùn)行Tomcat
17.4.1 如何編寫UNIX/Linux Shell腳本
17.4.2 catalina.sh腳本
17.4.3 在UNIX/Linux平臺(tái)上啟動(dòng)Tomcat
17.4.4 在UNIX/Linux平臺(tái)上關(guān)閉Tomcat
17.5 小結(jié)

第18章 部署器
18.1 部署一個(gè)Web應(yīng)用程序
18.1.1 部署一個(gè)描述符
18.1.2 部署一個(gè)WAR文件
18.1.3 部署一個(gè)目錄
18.1.4 動(dòng)態(tài)部署
18.2 Deploy接口
18.3 StandardHostDeployer類
18.3.1 安裝一個(gè)描述符
18.3.2 安裝一個(gè)WAR文件或目錄
18.3.3 啟動(dòng)Context實(shí)例
18.3.4 停止一個(gè)Context實(shí)例
18.4 小結(jié)

第19章 Manager應(yīng)用程序的servlet類
19.1 使用Manager應(yīng)用程序
19.2 Containerservlet接口
19.3 初始化ManagerServlet
19.4 列出已經(jīng)部署的Web應(yīng)用程序
19.5 啟動(dòng)Web應(yīng)用程序
19.6 關(guān)閉Web應(yīng)用程序
19.7 小結(jié)

第20章 基于JMX的管理
20.1 JMX簡(jiǎn)介
20.2 JMX API
20.2.1 MBeanServer類
20.2.2 ObjectName類
20.3 標(biāo)準(zhǔn)MBean
20.4 模型MBean
20.4.1 MBeanInfo接口與ModelMBeanInfo接口
20.4.2 ModelMBean示例
20.5 Commons Modeler庫
20.5.1 MBean描述符
20.5.2 mbean元素示例
20.5.3 自己編寫一個(gè)模型 MBean類
20.5.4 Registry類
20.5.5 ManagedBean
20.5.6 BaseModelMBean
20.5.7 使用Modeler庫API
20.6 Catalian中的MBean
20.6.1 ClassNameMBean類
20.6.2 StandardServerMBean類
20.6.3 MBeanFactory類
20.6.4 MBeanUtil
20.7 創(chuàng)建Catalina的MBean
20.8 應(yīng)用程序
20.9 小結(jié)


點(diǎn)此購買



以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)