1. 程式人生 > >各種WEB服務器自帶的默認Servlet名稱

各種WEB服務器自帶的默認Servlet名稱

glass 服務 .com spring con 希望 websphere conf alt

Tomcat, Jetty, JBoss, and GlassFish 自帶的默認Servlet的名字 -- "default"
Google App Engine 自帶的 默認Servlet的名字 -- "_ah_default"
Resin 自帶的 默認Servlet的名字 -- "resin-file"
WebLogic 自帶的 默認Servlet的名字  -- "FileServlet"
WebSphere  自帶的 默認Servlet的名字 -- "SimpleFileServlet" 

知道後有何用處?
如果web.xml中配置了某個servlet攔截了所有的請求,那麽一些靜態資源的訪問如jpg,css,js也會被處理。
如果不希望這些請求被你配置的servlet處理那麽可以把服務器自帶的默認servlet先去攔截掉這些資源,但是要保證默認的servelt寫在你配置的servelt前面。

<servlet-mapping>     
    <servlet-name>default</servlet-name>    
    <url-pattern>*.jpg</url-pattern>       
</servlet-mapping>      
<servlet-mapping>         
    <servlet-name>default</servlet-name>      
    <url-pattern>*.js</url-pattern
> </servlet-mapping> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>

在tomcat中,什麽是DefaultServlet?他的功能是什麽

首先所有的請求進入tomcat,都會流經servlet,如果沒有匹配到任何應用指定的servlet,那麽就會流到默認的servlet

默認的servlet是配置在$catalina/conf/web.xml裏面的

技術分享

技術分享

應用的一些靜態資源就可以交給該servlet去處理,以減輕服務器壓力,節省資源!如果你用SpringMVC。就會有感覺,當你配置
org.springframework.web.servlet.DispatcherServlet攔截所有請求時,對靜態資源的請求也會被攔截,這時你就可以把靜態資源交給DefaultServlet來處理!

各種WEB服務器自帶的默認Servlet名稱