servlet为什么要别名呢_servlet --2
1.servlet比較關鍵的是對web.xml進行配置了,它直接關系到我們同過客服端能不能正確訪問到我們的項目。在web.xml配置中,除了要關注的<servlet-name>與 <servlet-class>的配置,還要了解到<url-pattern>的幾種配置方法,主要是這幾種配置方法我們要掌握:
- 第一種:精確配置<url-pattern>/別名</url-pattern>在里面寫上別名。/是必須的,別名不可以是中文,可以配置多個別名
- 第二種:模糊配置<url-pattern>*.后綴名</url-pattern>只要是以.后綴名結尾的都可以運行。作用,在進行模塊化開發的劃分請求等級時候使用。*是任意個數的任意字符
- 第三種:攔截配置<url-pattern>/*</url-pattern>會攔截所有類型的請求,包括靜態的(css,js等)和jsp請求
- 第四種:<url-pattern>/one/*</url-pattern>會攔截所有以one開頭的路徑請求
- 注意,一個servlet可以對用多個url-pattern。不同的servlet不能配置相同的url-pattern;服務器啟動的時候就會將你的web.xml文件解析加載進內存
2.當然我們也要對servlet的創建有充分的理解。首先是客戶端與服務器請求中哪里需要用到servlet,servlet要起到什么作用?
我們要了解圖中localhost:8080/project/s每一部分的作用:
- locahost:8080,請求服務器的地址,通過該地址連接至服務器
- Project存放在tomcat服務器中的webapps目錄下的虛擬項目名,通過該名字找到指定的文件夾
- /s通過別名找到對應的servlet,找到指定的servlet才能調用相應的service方法
首先客戶端會將請求同過url地址根據http協議打包好的請求發送給服務器,服務器接收到請求后,會通過http協議解析請求信息,把請求的信息封裝為request,同時也封裝一個response,會去根據url找到相應的webapps目錄下的相應的項目,并匹配到相應的servlet,并將response,與request作為實參傳遞給執行servelt,調用下面的service方法,處理好找到的數據后,會將處理好的數據傳給response,通過http協議封裝相應給客戶端。
同時我們也要知道服務器在接受到請求后,會開辟一個線程來處理請求,在線程種調用servlet進行處理。來一個請求會開一個相應的線程。服務器會調用servlet的處理請求,但是一個servlet服務器只會創建一個實例化對象,并且是線程共享的。開了一百萬個線程就相當于調用了一百萬次的service方法,只不過是傳遞的參數不同,如果每一個線程都要開一個servlet將會造成服務器壓力過大而影響服務器的性能。
3.那么servlet的生命周期是什么呢?
首先servlet的生命周期為第一次調用到服務器關閉,并且可以在web.xml中通過<load-on-startup>1</load-on-startup>配置servlet的初始化次序。其中1為服務器啟動servlet的初始化次序,這時servlet的生命周期就為一個servlet會在服務器啟動的時候進行初始化操作,一直生存到服務器關閉。
4.那么在實現sevlet類處理請求信息中,里面大概包含哪幾種信息呢?
對于servlet的處理調用主要是這三種:
而對于請求方式的處理也主要有三種:
5. 在編寫web項目的時候啟動服務器我們經常會遇到客戶端的報錯,這時呢主要會有這幾種錯誤,當遇到這樣的問題時,我們也可以采取相應的方式去處理:
總結
以上是生活随笔為你收集整理的servlet为什么要别名呢_servlet --2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装已停止,原因是 ProjectTyp
- 下一篇: 螺旋方阵(Leetcode第59题)