<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 0, comments - 77, trackbacks - 0, articles - 356
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    ApplicationContext

    Posted on 2007-08-15 17:15 semovy 閱讀(1098) 評(píng)論(0)  編輯  收藏 所屬分類: spring
            spring為ApplicationContext提供的3種實(shí)現(xiàn)分別為:ClassPathXmlApplicationContext,F(xiàn)ileSystemXmlApplicationContext和XmlWebApplicationContext,其中XmlWebApplicationContext是專為Web工程定制的。使用舉例如下:
       1. FileSystemXmlApplicationContext
               eg1. ApplicationContext ctx = new FileSystemXmlApplicationContext("bean.xml"); //加載單個(gè)配置文件
               eg2.
                       String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};
                       ApplicationContext ctx = new FileSystemXmlApplicationContext(locations ); //加載多個(gè)配置文件
               eg3.        
            ApplicationContext ctx =new FileSystemXmlApplicationContext("D:/project/bean.xml");//根據(jù)具體路徑加載文件
      2. ClassPathXmlApplicationContext
               eg1.  ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");
               eg2.
                       String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};
                       ApplicationContext ctx = new ClassPathXmlApplication(locations);
               注:其中FileSystemXmlApplicationContext和ClassPathXmlApplicationContext與BeanFactory的xml文件定位方式一樣是基于路徑的。
    3. XmlWebApplicationContext
           eg1. ServletContext servletContext = request.getSession().getServletContext();    
                ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);



    注 : 一般是 ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());


     加載器目前有兩種選擇:ContextLoaderListener和ContextLoaderServlet。
             這兩者在功能上完全等同,只是一個(gè)是基于Servlet2.3版本中新引入的Listener接口實(shí)現(xiàn),而另一個(gè)基于Servlet接口實(shí)現(xiàn)。開發(fā)中可根據(jù)目標(biāo)Web容器的實(shí)際情況進(jìn)行選擇。

    配置非常簡(jiǎn)單,在web.xml中增加:
    <listener>
           <listener-class>
              org.springframework.web.context.ContextLoaderListener
           </listener-class>
    </listener>
    或:
    <servlet>
             <servlet-name>context</servlet-name>
             <servlet-class>
               org.springframework.web.context.ContextLoaderServlet
             </servlet-class>
             <load-on-startup>1</load-on-startup>
    </servlet>


    通過以上配置,Web容器會(huì)自動(dòng)加載/WEB-INF/applicationContext.xml初始化
    ApplicationContext實(shí)例,如果需要指定配置文件位置,可通過context-param加以指定:
    <context-param>
             <param-name>contextConfigLocation</param-name>
             <param-value>/WEB-INF/myApplicationContext.xml</param-value>
    </context-param>

    配置完成之后,即可通過
    WebApplicationContextUtils.getWebApplicationContext方法在Web應(yīng)用中獲取ApplicationContext引用。

    如:ApplicationContext ctx=WebApplicationContextUtils.getWebApplicationContext();
             LoginAction action=(LoginAction)ctx.getBean("action");

    主站蜘蛛池模板: 少妇高潮太爽了在线观看免费| 免费在线观看污网站| 亚洲AV综合永久无码精品天堂| 四虎国产精品免费久久影院| 十八禁在线观看视频播放免费| 亚洲妇女水蜜桃av网网站| 又大又黄又粗又爽的免费视频 | 免费女人18毛片a级毛片视频| 国产免费人成视频在线播放播| 亚洲综合久久1区2区3区 | 国产精品亚洲四区在线观看| 免费a级毛片网站| 最近免费视频中文字幕大全| 亚洲精品乱码久久久久久V| 亚洲va无码专区国产乱码| 麻豆精品国产免费观看| 久久永久免费人妻精品| 美女被免费网站视频在线| 亚洲日本在线免费观看| 亚洲熟伦熟女新五十路熟妇| 欧洲黑大粗无码免费| 国内精品免费视频精选在线观看| 亚洲国产精华液2020| 亚洲综合激情另类小说区| 亚洲色偷偷偷鲁综合| 国产国产成年年人免费看片| 亚洲视频免费一区| 成全视频在线观看免费| 羞羞视频免费网站入口| 成人亚洲国产va天堂| 久久久久亚洲AV无码专区首JN| 亚洲精品无码99在线观看| 全免费a级毛片免费看无码| 亚洲黄色免费电影| a级毛片免费播放| 有码人妻在线免费看片| 亚洲av无码专区首页| 国产AV旡码专区亚洲AV苍井空| 亚洲一区二区三区夜色| 亚洲精品国精品久久99热一| 亚洲精品成人a在线观看|