web.xml配置之 詳解


 讀完本文,你將了解(1)<context-param>的作用和用法,(2)<context-param>配置和<init-param>的區別

<context-param>的作用和用法:

1.<context-param>配置是是一組鍵值對,比如:

 <context-param>
        <param-name>home-page</param-name>
        <param-value>home.jsp</param-value>
    </context-param>

param-name是鍵,相當於就是參數名,param-value是值,相當於參數值

2.當服務器啟動時,服務器會讀取web.xml配置,當讀到<listener></listener>和<context-param></context-param>這兩個節點的時候,容器會將這兩個節點set到ServletContext(上下文對象)中,這樣我們在程序中就能通過這個上下文對象去取得我們這個配置值。

具體代碼實現:

String sHomePage = getServletContext().getInitParameter("home-page");

通過上面這句代碼,我們就可以取得web.xml中配置的home.jsp這個值。

說白了,他就相當於設定了一個固定值,我們可以在程序中去使用它。就這么個作用。

注:我看到很多文章都是把它和監聽一起說的,寫說這個配置在監聽中怎么用。我要說的他並不是為了監聽去設定的。程序中的所有servlet可以利用這個值,我在這里強調一下這一點,希望大家不要被誤導

<context-param>配置和<init-param>的區別:

<servlet>
        <servlet-name>ServletInit</servlet-name>
        <servlet-class>com.sunrain.datalk.wserver.util.servlet.ServletInit</servlet-class>

        <init-param>

                  <param-name>home-page</param-name>
                 <param-value>home.jsp</param-value>

        </init-param>
  </servlet>

我們可以看到<init-param>是放在一個servlet內的,所以這個參數是只針對某一個servlet而言的

所以他們的區別就有點像全局變量和和局部變量的<context-param>是針對整個項目,所有的servlet都可以取得使用,<init-param>只能是在那個servlet下面

配置,就在那個servlet里面調用

 

轉載 ;http://blog.csdn.net/jixinhuluwa/article/details/48003203


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM