servlet兩種配置方法詳解

2021-10-07 10:34:39 字數 2173 閱讀 3851

1 2          

3 demoaction

4

5 com.uplooking.controller.demoaction

6 1

7

8 11 demoaction

12

13 /demoaction

3、匹配到以後,找到servlet標籤中的servlet-class標籤中對應servlet類的src資料夾下的全路徑。

4、從而呼叫並執行相應的servlet類。

初始化引數

1 2 abc

3 123

4

乙個servlet可以配置乙個或多個初始化引數。

在應用程式中,可以使用servlet的getinitparameter(string param)來讀取初始化param對應的引數;若要讀取所有的初始化引數名稱,則可以使用getinitparameternames()方法獲得所有的引數名稱,型別為列舉(enumeration)。

//獲取所有初始化引數

enumerationstrs=this.getinitparameternames();

while(strs.hasmoreelements())

這些初始化引數也可以由servletconfig物件獲取,servlet提供getservletconfig()方法提供servletconfig物件。由servletconfig獲取初始化引數和由servlet獲取初始化引數的方法是一樣的。

//兩種呼叫getinitparameter的情況,視情況而定

//this是指servletconfig的物件config

string str=this.getinitparameter("abc"); //第一種

string str=config.getinitparameter(「abc」);//第二種

初始化引數的乙個有趣應用是進行單個檔案的訪問加密,原理是將使用者名稱和密碼寫入初始化引數中,這樣的好處是簡單、方便,缺點是不靈活,安全性也不高,適用於臨時性的措施。

上下文引數

1 2          root

3 123

4

獲取context-param需要使用servletcontext物件。servletcontext物件可以通過在servlet中的getservletconfig().getservletcontext()方法獲得。得到servletcontext物件後,使用getinitparameter(string param)方法獲取名為param的引數值,通過getinitparameternames()獲取所有的context-param名稱。

servletcontext context=this.getservletcontext();

string root=context.getinitparameter("root");

system.out.println("root="+root);

1.只需在對應的servlet類中新增servlet註解即可,從瀏覽器傳送請求時,是用當前「工程」下的路徑,會去對應servlet類的上面尋找是否存在對應url名稱的@webservlet註解,存在的話,呼叫並執行對應的servlet類。

總結:

共同點:註解訪問servlet和web配置檔案訪問servlet都能完成對servlet的訪問。

註解訪問servlet:

優點:**少,可讀性強,易於理解。

缺點:如果大量使用servlet註解,servlet類檔案數量過多,不便於查詢和修改。

web配置檔案訪問servlet:

優點:集中管理各servlet類路徑的對映路徑,便於修改和管理。

缺點:**多,可讀性不強,不易於理解。

注意:有時候在服務上執行的web程式資料不能及時更新,記得重啟伺服器或者清除瀏覽器快取。

Servlet的兩種配置

1 在web.xml中配置 index.htmlwelcome file welcome file list stunameparam name 王永亮param value context param servlet註冊名servlet name 全限定類名 包名 類名 servlet class...

兩種Servlet的路徑配置

來吧,看看我在過去的一小時裡面折騰了個什麼玩意兒 首先介紹乙個知識點,然後再說一下我遇到的bug?servlet的url就是在瀏覽器中輸入了之後會直接訪問到的位址 相對路徑 比如在我們專案裡面,專案執行之後的上下文位址是 http localhost 8080 test,firstservlet的u...

Servlet的兩種service方法原始碼分析

我們常常在用servlet介面時,一般都會繼承於httpservlet,重寫doget和dopost方法,但其底層原理是怎麼實現的,沒有進行了解,下面我就談談自己的見解 當使用者傳送請求時,tomcat伺服器預設找帶有 servletrequest req,servletresponse resp ...