如何在.xml中配置Servlet信息

在编写好servlet文件后需要在web.xml文件下配置servlet,才能使servlet在服务器上运行。基本配置方式如下所示

 

<context-param>
    <param-name>context1</param-name>
    <param-value>000001</param-value>
</context-param>
<context-param>
    <param-name>context2</param-name>
    <param-value>000002</param-value>
</context-param>
<servlet>
    <servlet-name>helloServlet</servlet-name>
    <servlet-class>com.hamigua.servlet.HelloServlet</servlet-class>
    <init-param>
        <param-name>User</param-name>
        <param-value>Servlet1</param-value>
    </init-param>
    <init-param>
        <param-name>PassWord</param-name>
        <param-value>123456</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>helloServlet</servlet-name>
    <url-pattern>/testServlet</url-pattern>
</servlet-mapping>

 

这里主要有两大块<servlet>配置和<servlet-mapping>映射。

其中,<context-param>是设置servlet的初始化参数(是全局的,所有的servlet都可以使用),可以在init()方法中通过ServletConfig的对象创建ServletContext对象,并由ServletContext对象调用getInitParameter("User")方法获取到User所对应的value值,调用getInitParameterNames()方法获取到所有的name值,调用getRealPath()获取某一文件在服务器上的绝对路径,调用getContextPath()获取当前web应用的工程名称。

   <servlet-name>是为此配置在.xml文件中起的一个唯一名称,此文件中其他配置不可与之同名。同时在<servlet-mapping>中的<servlet-name>必须和此名称一致,因为是同一个servlet配置。

   <servlet-class>是servlet文件所在的类的完全限定名。

   <init-param>和<context-param>一样设置一些servlet的初始化参数(局部的仅限于此servlet)可以在init()方法中使用ServletConfig的对象调用getInitParameter("User")方法获取到User所对应的value值,调用getInitParameterNames()方法获取到所有的name值。

   <load-on-startup>是servlet被创建的时机,也即init()方法调用的时机,若为自然数则数值越小越先被创建。

   <url-pattern>是此servlet对外访问的路径,从根目录开始,/testServlet表示根目录下的testServlet。/*表示根目录下所有文件都可访问此servlet,*.jsp表示根目录下所有后缀为jsp的文件都可以访问此servlet。

posted @ 2017-04-10 20:06  哈密瓜小王子  阅读(4010)  评论(0编辑  收藏  举报