欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
<context





分類(lèi): java 2012-10-08 11:28 5543人閱讀 評論(3) 收藏 舉報

<context-param><init-param>的區別與作用

 


<context-param>的作用:

1.啟動(dòng)一個(gè)WEB項目的時(shí)候,容器(如:Tomcat)會(huì )去讀它的配置文件web.xml.讀兩個(gè)節點(diǎn): <listener></listener> 和 <context-param></context-param>

2.緊接著(zhù),容器創(chuàng )建一個(gè)ServletContext(上下文),這個(gè)WEB項目所有部分都將共享這個(gè)上下文.

3.容器將<context-param></context-param>轉化為鍵值對,并交給ServletContext.

4.容器創(chuàng )建<listener></listener>中的類(lèi)實(shí)例,即創(chuàng )建監聽(tīng).

5.在監聽(tīng)中會(huì )有contextInitialized(ServletContextEvent args)初始化方法,在這個(gè)方法中獲得
ServletContext = ServletContextEvent.getServletContext();
context-param的值 = ServletContext.getInitParameter("context-param的鍵");

6.得到這個(gè)context-param的值之后,你就可以做一些操作了.注意,這個(gè)時(shí)候你的WEB項目還沒(méi)有完全啟動(dòng)完成.這個(gè)動(dòng)作會(huì )比所有的Servlet都要早.
換句話(huà)說(shuō),這個(gè)時(shí)候,你對<context-param>中的鍵值做的操作,將在你的WEB項目完全啟動(dòng)之前被執行.

7.舉例.你可能想在項目啟動(dòng)之前就打開(kāi)數據庫.
那么這里就可以在<context-param>中設置數據庫的連接方式,在監聽(tīng)類(lèi)中初始化數據庫的連接.

8.這個(gè)監聽(tīng)是自己寫(xiě)的一個(gè)類(lèi),除了初始化方法,它還有銷(xiāo)毀方法.用于關(guān)閉應用前釋放資源.比如說(shuō)數據庫連接的關(guān)閉.

web.xml的配置中<context-param>配置作用
1. 啟動(dòng)一個(gè)WEB項目的時(shí)候,容器(:Tomcat)會(huì )去讀它的配置文件web.xml.讀兩個(gè)節點(diǎn):<listener></listener><context-param></context-param>

2.緊接著(zhù),容器創(chuàng )建一個(gè)ServletContext(上下文),這個(gè)WEB項目所有部分都將共享這個(gè)上下文.

3.容器將<context-param></context-param>轉化為鍵值對,并交給ServletContext.

4.容器創(chuàng )建<listener></listener>中的類(lèi)實(shí)例,即創(chuàng )建監聽(tīng).

5.在監聽(tīng)中會(huì )有contextInitialized(ServletContextEventargs)初始化方法,在這個(gè)方法中獲得ServletContext =ServletContextEvent.getServletContext();
context-param
的值 =ServletContext.getInitParameter("context-param的鍵");

6.得到這個(gè)context-param的值之后,你就可以做一些操作了.注意,這個(gè)時(shí)候你的WEB項目還沒(méi)有完全啟動(dòng)完成.這個(gè)動(dòng)作會(huì )比所有的Servlet都要早.
換句話(huà)說(shuō),這個(gè)時(shí)候,你對<context-param>中的鍵值做的操作,將在你的WEB項目完全啟動(dòng)之前被執行.

7.舉例.你可能想在項目啟動(dòng)之前就打開(kāi)數據庫.
那么這里就可以在<context-param>中設置數據庫的連接方式,在監聽(tīng)類(lèi)中初始化數據庫的連接.

8.這個(gè)監聽(tīng)是自己寫(xiě)的一個(gè)類(lèi),除了初始化方法,它還有銷(xiāo)毀方法.用于關(guān)閉應用前釋放資源.比如說(shuō)數據庫連接的關(guān)閉.

:
<!--
加載spring的配置文件 -->
<context-param>
    <param-name>contextConfigLocation</param-name>
   <param-value>/WEB-INF/applicationContext.xml,/WEB-INF/action-servlet.xml,/WEB-

INF/jason-servlet.xml</param-value>
</context-param>
<listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

又如: --->自定義context-param,且自定義listener來(lái)獲取這些信息

<context-param>
    <param-name>urlrewrite</param-name>
    <param-value>false</param-value>
</context-param>
<context-param>
    <param-name>cluster</param-name>
    <param-value>false</param-value>
</context-param>
<context-param>
    <param-name>servletmapping</param-name>
    <param-value>*.bbscs</param-value>
</context-param>
<context-param>
    <param-name>poststoragemode</param-name>
    <param-value>1</param-value>
</context-param>
<listener>
    <listener-class>com.laoer.bbscs.web.servlet.SysListener</listener-class>
</listener>

publicclass SysListenerextends HttpServlet implements ServletContextListener{

privatestatic final Log logger = LogFactory.getLog(SysListener.class);

publicvoidcontextDestroyed(ServletContextEventsce){

  //用于在容器關(guān)閉時(shí),操作
}

//用于在容器開(kāi)啟時(shí),操作

publicvoidcontextInitialized(ServletContextEventsce){
   String rootpath =
sce.getServletContext().getRealPath("/");
  System.out.println("-------------rootPath:"+rootpath);

  if (rootpath != null) {
    rootpath = rootpath.replaceAll("\\\\","/");
   } else {
    rootpath = "/";
   }
   if (!rootpath.endsWith("/")) {
    rootpath = rootpath + "/";
   }
   Constant.ROOTPATH = rootpath;
   logger.info("Application Run Path:" + rootpath);
   String urlrewrtie =
sce.getServletContext().getInitParameter("urlrewrite");
   boolean burlrewrtie = false;
   if (urlrewrtie != null) {
    burlrewrtie = Boolean.parseBoolean(urlrewrtie);
   }
   Constant.USE_URL_REWRITE = burlrewrtie;
   logger.info("Use Urlrewrite:" + burlrewrtie);
  
其它略之....

  }

}
   /*
最終輸出
   -------------rootPath:D:\tomcat_bbs\webapps\BBSCS_8_0_3\
   2009-06-09 21:51:46,526[com.laoer.bbscs.web.servlet.SysListener]-[INFO]

ApplicationRun Path:D:/tomcat_bbs/webapps/BBSCS_8_0_3/
   2009-06-09 21:51:46,526[com.laoer.bbscs.web.servlet.SysListener]-[INFO]

UseUrlrewrite:true
   2009-06-09 21:51:46,526 [com.laoer.bbscs.web.servlet.SysListener]-[INFO]

UseCluster:false
   2009-06-09 21:51:46,526[com.laoer.bbscs.web.servlet.SysListener]-[INFO]

SERVLETMAPPING:*.bbscs
   2009-06-09 21:51:46,573[com.laoer.bbscs.web.servlet.SysListener]-[INFO]

PostStorage Mode:1
   */

context-paraminit-param區別
web.xml
里面可以定義兩種參數:
(1)application范圍內的參數,存放在servletcontext中,在web.xml中配置如下:
<context-param>
          <param-name>context/param</param-name>
          <param-value>avalible during application</param-value>
</context-param>

(2)servlet范圍內的參數,只能在servletinit()方法中取得,web.xml中配置如下:
<servlet>
    <servlet-name>MainServlet</servlet-name>
   <servlet-class>com.wes.controller.MainServlet</servlet-class>
    <init-param>
      <param-name>param1</param-name>
       <param-value>avalible in servletinit()</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
</servlet>

servlet中可以通過(guò)代碼分別取用:
package com.wes.controller;

importjavax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

publicclass MainServlet extends HttpServlet ...{

   public MainServlet() ...{
        super();
     }
    public void init() throws ServletException ...{
         System.out.println("
下面的兩個(gè)參數param1是在servlet中存放的");
        System.out.println(this.getInitParameter("param1"));
         System.out.println("
下面的參數是存放在servletcontext中的");
       System.out.println(getServletContext().getInitParameter("context/param"));
      }
}

第一種參數在servlet里面可以通過(guò)getServletContext().getInitParameter("context/param")得到
第二種參數只能在servletinit()方法中通過(guò)this.getInitParameter("param1")取得.

 


主題推薦
color d3 3d
猜你在找
查看評論
3樓 ao32112 2015-02-05 17:12發(fā)表 [回復]
原來(lái)是兩種類(lèi)型的參數啊。
但是在配置springMVC時(shí),可以只配置
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</init-param>替換
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>這個(gè)嗎?
2樓 風(fēng)舞葉揚 2015-01-22 18:05發(fā)表 [回復]
叼叼叼叼叼 原來(lái)spring容器不是web.xml啟動(dòng)的- - 被蒙蔽這么久
1樓 其實(shí)我是黨員 2014-08-13 09:31發(fā)表 [回復]
學(xué)習了..
發(fā)表評論
  • 用 戶(hù) 名:
  • wangwangzq126
  • 評論內容:
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
web.xml之<context
ServletConfig與ServletContext對象詳解
ServletContext
servet取得web.xml的初始值
context-param和init-param區別
JAVA定時(shí)執行任務(wù)(Tomcat 下的定時(shí)任務(wù))
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久