首页 > 代码库 > Servlet中的配置 web.xml

Servlet中的配置 web.xml

url-pattern配置

可以为同一个Servlet配置多个url-pattern:

  <servlet>

                <servlet-name>DoGetPostDemo</servlet-name>

                <servlet-class>org.lyk.servlet.DoGetPostDemo</servlet-class>

  </servlet>

  <servlet-mapping>

                <servlet-name>DoGetPostDemo</servlet-name>

                <url-pattern>/testA.html</url-pattern>

                <url-pattern>/testB.html</url-pattern>

  </servlet-mapping>

也可用*做模糊匹配

  <servlet>

                <servlet-name>DoGetPostDemo</servlet-name>

                <servlet-class>org.lyk.servlet.DoGetPostDemo</servlet-class>

  </servlet>

  <servlet-mapping>

                <servlet-name>DoGetPostDemo</servlet-name>

                <url-pattern>/hello/*</url-pattern>

  </servlet-mapping>

 

ServletMapping匹配规则

Servlet mapping有对应的匹配规则,其优先级分别如下:

  • 精确路径匹配 ,完全匹配
  • 最长路径匹配
  • 扩展名匹配
  • default servlet 或者放弃

 

 

 

load-on-startup

默认情况下,在容器启动的时候,servlet不会被加载,而当有对应请求的时候才回去加载对应的servlet。但是,可以在配置中特别指定哪些servlet可以在容器启动的时候就进行加载。

  <servlet>

                <load-on-startup>0</load-on-startup>

                <servlet-name>DoGetPostDemo</servlet-name>

                <servlet-class>org.lyk.servlet.DoGetPostDemo</servlet-class>

  </servlet>

这里要注意的是,优先级0最大,其次是1,2,以此类推。也就是说,有多个servlet都配置了该属性的时候,在容器启动时会根据优先级而确定对应的servlet的加载顺序。

 

访问页面不存在

有的时候,当用户输入一些非法地址时会导致访问页面不存在的错误,也就是404 Error。我们可以在配置文件中指定当该错误发生时的默认展示页面。

  <error-page>

                <error-code>404</error-code>

                <location>/html/error.html</location>

  </error-page>

Servlet中的配置 web.xml