关于ApplicationContext的初始化

一、提倡的初始化方法:
《1》在独立应用程序中,获取ApplicationContext:
          AbstractApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
         context.close();//释放资源
《2》在web环境中,获取ApplicationContext:

      A)ServletContext servletContext = request.getSession().getServletContext();               

         ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext); 

      B)String contextpath = "org.springframework.web.context.WebApplicationContext.ROOT";

         WebApplicationContext context = request.getSession().getServletContext().getAttribute(contextpath);   

 

二、不提倡的方法:(这种写法不仅仅耗内存,占资源,而且如果数据库连接太多,很容易造成系统运行的缓慢甚至stop!)

        ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

    在非Web应用中,手工加载Spring IoC容器,不能用ApplicationContext,要用AbstractApplicationContext。用完以后要记得调用ctx.close()关闭容器。如果不记得关闭容器,最典型的问题就是数据库连接不能释放

posted @ 2016-11-10 09:59  如.若  阅读(377)  评论(0编辑  收藏  举报