2012-08-28 77 views
4
<servlet> 
    <servlet-name>PerformReg</servlet-name> 
    <servlet-class>com.PerformRegistartion</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>PerformReg</servlet-name> 
    <url-pattern>/PerformReg</url-pattern> 
</servlet-mapping> 

根據我上面的代碼,用於映射servlet-class及其url-pattern
但我懷疑爲什麼他們(java專家)這樣做(爲什麼他們做了servletservlet-mapping兩個單獨的標籤)。
他們可以做的事情如下所述:web.xml中servlet和servlet映射的說明

<servlet> 
    <servlet-class>com.PerformRegistartion</servlet-class> 
    <url-pattern>/PerformReg</url-pattern> 
</servlet> 

這可能使它更簡單。前面提到的代碼中servlet-name的需求是什麼?

請幫我清除我的疑惑。

預先感謝您。

+1

這個問題應該顯示一些研究的努力。嘗試使用谷歌或其他可以提供幫助的答案,然後問相似的問題 – Prateek

+1

@Sajith我的問題與您建議的鏈接不同。我想問,'爲什麼我們需要servlet名稱?'在第二個代碼塊中,我編寫了用於servlet-class和url-pattern之間映射的代碼。 – Mitesh

+1

您的問題可能會回答[這裏](http://stackoverflow.com/a/8198327/468763) –

回答

0

在web.xml中,您使用servlet-name作爲servlet的唯一引用。 該名稱標識了servlet,可以與過濾器等一起使用。 這不僅僅是將你的servlet映射到特定的URL。

您可以將其視爲別名。

0

名稱始終是類的唯一標識。這裏serlvelt-class可能會出現兩次,但是我們所稱的servlet應該是唯一的。這將由servlet名稱標識。如果你在struts1或struts2中看到或spring會在spring id中有名字offcourse。但無論是姓名還是身份證件,身份證明都應該是強制性的。

在servlet中,servlet類也只是由servlet名稱觸發,而不是由servlet類觸發。因爲一個類將執行不同的動作。每個動作都應該用名字來標識。

+0

在未來,不要在您的文章中包含與您的網站無關的鏈接。這樣做會將您的帖子和帳戶標記爲垃圾郵件。我正在從你的帖子中刪除鏈接。 –

0

web.xml,我們使用<servlet>元件提供在< servlet-name >標籤的唯一名稱即先配置的servlet和< servlet-class >標籤寫入Servlet的類名。

其次,我們使用< servlet-mapping >元素將此servlet映射到URL或URL模式。 < servlet-name >元素用於指定servlet的名稱,應針對與指定爲< url-pattern >元素的值的模式匹配的傳入URL調用該名稱。