菜鳥學Linux 第102篇筆記 tomcat + JDK
内容總覽
Java體系
JDK (Java Development Kit) java SE, java EE
Tomcat
tomcat配置檔案
tomcat 應用程式“部署”
webapp體系結構
webapp的歸檔格式
tomcat的運作方式
java程式設計語言
java API
java class檔案格式
java VM
JDK (Java Development Kit)
java SE: JDK + 額外類庫,面向桌面級應用
java EE: Java SE + 企業級類庫
servlet, jsp, jmx
servlet 類庫
servlet container
jsp 類庫
<% %>
借助JDK + servlet, jsp
Java EE不完整的實作
web container
Jetty, Resin
Websphere, weblogic, JBoss, Glassfish, GonAS
tomcat:
server.xml
頂級類: server
容器類: engine, host, context
服務類: service
連接配接器: connector (http,ssl,ajp) apache jserv protocol
被嵌套類: valve, logger, realm
<server>
<service>
<connector />
<engine>
<host>
<context />
</host>
</engine>
</service>
</server>
server status:
狀态檢視
app部署
host manager:
虛拟主機管理
安裝目錄
bin
conf
server.xml, tomcat-users.xml, web.xml
logs
lib
temp
webapps
work
context.xml 為部署于此tomcat執行個體上的所有web應用程式提供的預設配置檔案,每個webapp
都可以使用自己獨有的context.xml 通常放置于webapp目錄中的META-INF目錄中
常用于定義會話管理器、realm以及JDBC等
web.xml 部署描述符,通常用于為webapp提供基本的的servlet定義和MIME映射表等
tomcat-users.xml 使用者控制
catalina.policy 當基于-security選項啟動tomcat執行個體時會讀取此配置檔案,安全政策配置
catalina.properties java屬性定義檔案,設定類加載路徑、安全包清單和一些調整性能參數
logging.properties 日志相關配置
部署是指将webapp及其所依賴類庫等裝載進tomcat執行個體上,以便接受使用者請求
部署方式:
靜态方式,在tomcat啟動之前進行的webapp部署
動态方式,在不中止tomcat運作的前提下,通過tomcat manager或其它的指令行工具進行
部署
部署是由一類“操作”組成:
deploy 将webapp的源檔案放置于目錄目錄、配置tomcat伺服器能夠基于某context路徑
通路此webapp,并将其特有的類由類加載器進行裝載等
redeploy 重新部署,主要用于更新時
undeploy 取消部署,停止應用程式,并從tomcat實體上移除其部分檔案和部署名
stop 停止
start 将停止的webapp再次啟動
部署方式
tomcat manager
ant script
TCD
war類歸檔程式部署實作,将歸檔檔案複制到$CATALINA_BASE/webapps目錄并重新開機即可
未歸檔 直接放置在上述目錄中即可
webapp有特定的組織格式,是一種層次性目錄結構 通常包含了servlets代碼檔案,jsp頁面
檔案、類檔案、部署描述符檔案等等,一般會打包成歸檔格式
/ web應用程式的根目錄
/WEB-INF 此webapp的私有資源目錄,通常web.xml和context.xml放置在此處
/WEB-INF/class 此webapp自有的類
/WEB-INF/lib 此webapp自有能夠被打包為jar格式的類
EJB類歸檔的擴充名為.jar
web應用程式的歸檔擴充名為.war
資源擴充卡的擴充名.rar (resource adapters)
企業級應用程式的擴充名.ear (enterprise archive)
web服務的擴充名通常為.ear或.war
standalone configure
request --> web server(tomcat) --> servlet container
程序間配置
獨立網絡配置
apache與tomcat連接配接器通信的子產品有兩個
mod_jk: apache/1.3, apache/2.0
mod_proxy: apache/2.2+
tomcat的連接配接器協定有兩種
http
ajp
LAMT:
apache(mod_jk, ajp) + tomcat(ajp connector)
apache(mod_proxy,(http,https,ajp)) + tomcat(http,https, ajp)
LNMT:
nginx + tomcat(http, https)
本文轉自Winthcloud部落格51CTO部落格,原文連結http://blog.51cto.com/winthcloud/1899162如需轉載請自行聯系原作者
Winthcloud