Tomcat 详解 一
生活随笔
收集整理的這篇文章主要介紹了
Tomcat 详解 一
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
一、ContainerServlet 類。org.apache.catalina.ContainerServlet ?是一個接口類,它可以訪問Catalina的內部功能,它有Catalina被類加載器加載,而不是我們的WebApplication類加載器。它的Setter方法在這個Servlet的新的實例被放進Service時被執行。
??? 我們使用它獲取 Engine, Host,? Context等內部對象。要使用這個類必需在Context配置中使 privileged="true" 如下: <Context docBase="D:/upload" path="/upload" privileged="true"/>
要獲取Tomcat的訪問控制權限,我們需要一個實現org.apache.catalina.ContainerServlet接口的Servlet,該接口有兩個方法,getWrapper和setWrapper,Tomcat啟動的時候,會使用setWrapper方法注入org.apache.catalina.Wrapper接口的一個實例,通過這個接口,我們可以獲取到Tomcat中所有的容器對象,包括Server,Service,Engine,Host和Context,和server.xml配置文件的標簽。
例子:
測試類:
配置文件:
<servlet><servlet-name>TomcatContextServlet</servlet-name><servlet-class>com.web.servlet.TestServlet</servlet-class><load-on-startup>1</load-on-startup> </servlet>設置<load-on-startup>使這個Servlet在WebContainer初始化時加載,否則它將沒有加載的機會,因為我們在應用中不會直接使用到這個Servlet。
load-on-startup?這個元素的含義是在服務器啟動的時候就加載這個servlet(實例化并調用init()方法).這個元素中的可選內容必須為一個整數,表明了這個servlet被加載的先后順序.當是一個負數時或者沒有指定時,則表示服務器在該servlet被調用時才加載。當值為0或者大于0時,表示服務器在啟動時就加載這個servlet.該容器肯定可以保證被標記為更小的整數的servlet比被標記為更大的整數的servlet更先被調用,還可已選擇同樣的load-on-start-up值來夾在servlets.補充:正數的值越小,啟動該servlet的優先級越高。
轉載于:https://my.oschina.net/wallenheng/blog/233028
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Tomcat 详解 一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows 开启防火墙策略允许ftp
- 下一篇: 关于一次装机后的个人总结