百木园-与人分享,
就是让自己快乐。

spring中有哪几种加载ApplicationContext.xml的方式呢?

转发:

  http://www.java265.com/JavaFramework/Spring/202205/3284.html

下文笔者讲述Spring中加载ApplicationContext.xml的方法分享,如下所示:

xml是spring最早期的配置方式之一,

目前市面上很多SpringMVC任然采用这种配置方式,那么Spring如何加载xml呢?

下文笔者将一一道来,如下所示

spring 中加载xml配置文件的方式
 有4种,分别为:
   XmlBeanFactory,
   ClassPathXmlApplicationContext,
   FileSystemXmlApplicationContext,
   XmlWebApplicationContext
 

一:XmlBeanFactory 引用资源

Resource resource = new ClassPathResource(\"applicationContext.xml\");
    BeanFactory factory = new XmlBeanFactory(resource);

 

二:ClassPathXmlApplicationContext 编译路径

ApplicationContext ac = new ClassPathXmlApplicationContext(\"applicationContext.xml\");
    ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{\"applicationContext.xml\",\"dao.xml\"});
    ApplicationContext ac = new ClassPathXmlApplicationContext(\"classpath:/*.xml\");
 
    ApplicationContext factory=new ClassPathXmlApplicationContext(\"classpath:appcontext.xml\");
    ApplicationContext factory=new ClassPathXmlApplicationContext(\"appcontext.xml\");   // src目录下的
    ApplicationContext factory=new ClassPathXmlApplicationContext(\"conf/appcontext.xml\");   // src/conf 目录下的
    ApplicationContext factory=new ClassPathXmlApplicationContext(\"file:G:/Test/src/appcontext.xml\");
    RegisterDAO registerDAO = (RegisterDAO)ac.getBean(\"RegisterDAO\");

 

三:用文件系统的路径

ApplicationContext factory=new FileSystemXmlApplicationContext(\"src/appcontext.xml\");
    //使用classpath:前缀,作为标志FileSystemXmlApplicationContext 也能够读入classpath下的相对路径
    ApplicationContext factory=new FileSystemXmlApplicationContext(\"classpath:appcontext.xml\");
    ApplicationContext factory=new FileSystemXmlApplicationContext(\"file:D:/Test/src/appcontext.xml\");
    ApplicationContext factory=new FileSystemXmlApplicationContext(\"D:/Test/src/appcontext.xml\");

 

四: XmlWebApplicationContext 是专为Web工程定制的

ServletContext servletContext = request.getSession().getServletContext(); 
    ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext ); 
 classpath:前缀是不需要的
     默认就是指项目的classpath路径下面
     如果要使用绝对路径,需要加上file:前缀表示这是绝对路径;

 


来源:https://www.cnblogs.com/java265/p/16223518.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » spring中有哪几种加载ApplicationContext.xml的方式呢?

相关推荐

  • 暂无文章