`
dove19900520
  • 浏览: 599759 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring加载xml配置文件的方式总结

    博客分类:
  • ssh
阅读更多

 

因为在项目中使用spring,经常会用到加载配置文件的方法,所以我特意从网上搜索了一下,xml是最常见的spring 应用系统配置源,Spring中的几种容器都支持使用xml装配bean,包括:
XmlBeanFactory,ClassPathXmlApplicationContext,FileSystemXmlApplicationContext,XmlWebApplicationContext
现在我将总结的Spring中加载xml配置文件的方式记录一下,作为以后的参考:

一: XmlBeanFactory 引用资源
Resource resource = new ClassPathResource("appcontext.xml");
BeanFactory factory = new XmlBeanFactory(resource);

二: ClassPathXmlApplicationContext  编译路径
ApplicationContext factory=new ClassPathXmlApplicationContext("classpath:appcontext.xml");
// src目录下的
ApplicationContext factory=new ClassPathXmlApplicationContext("appcontext.xml");
ApplicationContext factory=new ClassPathXmlApplicationContext(new String[] {"bean1.xml","bean2.xml"});
// src/conf 目录下的
ApplicationContext factory=new ClassPathXmlApplicationContext("conf/appcontext.xml");
ApplicationContext factory=new ClassPathXmlApplicationContext("file:G:/Test/src/appcontext.xml");

三: 用文件系统的路径
ApplicationContext factory=new FileSystemXmlApplicationContext("src/appcontext.xml");
//使用了  classpath:  前缀,作为标志,  这样,FileSystemXmlApplicationContext 也能够读入classpath下的相对路径
ApplicationContext factory=new FileSystemXmlApplicationContext("classpath:appcontext.xml");
ApplicationContext factory=new FileSystemXmlApplicationContext("file:G:/Test/src/appcontext.xml");
ApplicationContext factory=new FileSystemXmlApplicationContext("G:/Test/src/appcontext.xml");

四: XmlWebApplicationContext是专为Web工程定制的。
ServletContext servletContext = request.getSession().getServletContext();
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext );

五: 使用BeanFactory
BeanDefinitionRegistry reg = new DefaultListableBeanFactory();
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(reg);
reader.loadBeanDefinitions(new ClassPathResource("bean1.xml"));
reader.loadBeanDefinitions(new ClassPathResource("bean2.xml"));
BeanFactory bf=(BeanFactory)reg;

六:Web 应用启动时加载多个配置文件
通过ContextLoaderListener 也可加载多个配置文件,在web.xml文件中利用
<context-pararn>元素来指定多个配置文件位置,其配置如下:
Java代码 复制代码 收藏代码

 

  <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
               ./WEB-INF/**/Appserver-resources.xml,
               classpath:config/aer/aerContext.xml,
               classpath:org/codehaus/xfire/spring/xfire.xml,
              ./WEB-INF/**/*.spring.xml
        </param-value>
    </context-param>

这个方法加载配置文件的前提是已经知道配置文件在哪里,虽然可以利用“*”通配符,但灵活度有限。
分享到:
评论

相关推荐

    模拟spring的xml配置文件注入

    在Spring框架中,XML配置文件是核心组成部分,它定义了bean的实例化、依赖注入以及其他的框架设置。本文将深入探讨如何模拟Spring的XML配置文件注入,并通过SAXBuilder解析XML文件来实现这一过程。 首先,理解XML...

    Spring动态加载配置文件

    通常,我们将Spring的配置文件(如`applicationContext.xml`)放在项目的类路径下,如`src/main/resources`目录。确保配置文件的位置在项目构建后不会变动,以便于后续的监听和加载。 其次,我们需要创建一个监听类...

    spring bean XML配置入门

    Spring容器通过XML配置文件或注解来定义Bean及其相互关系。 3. **XML配置文件**: "spring-beans"是Spring中用于配置Bean的XML文件。该文件包含了一系列的元素,每个元素表示一个Java对象的定义,包括类名、属性值...

    spring加载多个配置文件

    对于Java配置,Spring允许在配置类中使用`@ImportResource`注解来引入XML配置文件,或者直接通过`@Configuration`注解的类来引用其他配置类。例如: ```java @Configuration @ImportResource({"classpath:config1....

    Spring中使用classpath加载配置文件浅析

    Spring框架提供了灵活的方式来加载位于classpath中的XML配置文件,这对于项目的模块化和可维护性至关重要。本文将详细分析Spring通过classpath加载配置文件的不同情形,并提供解决加载过程中可能遇到的问题的方法。 ...

    Spring 加载多个配置文件

    ### Spring 加载多个配置文件详解 #### 一、引言 在现代软件开发中,Spring 框架因其强大的依赖注入(DI)和面向切面编程(AOP)能力而备受青睐。尤其在构建大型应用时,为了提高代码的可读性和可维护性,将系统...

    Spring中如何加载多个配置文件.pdf

    需要注意的是,使用通配符的方式仅能匹配位于文件系统中的XML配置文件,对于打包在JAR包内的配置文件则不起作用。这是因为`ClassPathXmlApplicationContext`默认从classpath中查找配置文件,而这里的“文件系统”指...

    如何加载jar包中的spring配置文件

    在Spring MVC项目中,加载jar包中的Spring配置文件是一个常见的需求,特别是在进行SSM(Spring、Spring MVC、MyBatis)整合时。SSM框架的整合通常涉及到多个配置文件的组织和管理,其中一部分配置可能会被打包到独立...

    项目配置文件( spring-mvc.xml spring-mybatis.xml web.xml log4j.properties)

    这里提到的四个关键配置文件——`spring-mvc.xml`、`spring-mybatis.xml`、`web.xml`以及`log4j.properties`,对于一个基于Java的Web应用来说至关重要,特别是使用Spring MVC和MyBatis框架的时候。接下来,我们将...

    详解Spring加载Properties配置文件的四种方式

    Spring加载Properties配置文件的四种方式 Spring框架提供了多种方式来加载Properties配置文件,以便于应用程序读取和使用配置信息。下面将详细介绍四种常见的加载Properties配置文件的方式。 方式一: 通过context:...

    在Spring Boot中加载XML配置的完整步骤

    理解`@ImportResource`注解,它实际上是在Spring的`spring-context`模块中定义的,用于在Spring容器启动时加载XML配置文件。`ImportResource`内部实现了`BeanDefinitionReader`接口,该接口负责读取XML文件并将其...

    day38 04-Spring加载配置文件

    Spring加载XML配置文件的过程分为几个步骤: 1. **定位配置文件**:根据提供的路径找到XML配置文件。 2. **解析XML文件**:使用DOM或SAX解析器将XML内容转换为内存中的对象结构。 3. **构建BeanDefinition**:从解析...

    Spring3.0 配置文件中加载Properties文件的小例子

    接下来,我们将在Spring的配置文件(如`applicationContext.xml`)中声明一个`PropertyPlaceholderConfigurer` bean,它负责加载并解析Properties文件。配置如下: ```xml class="org.springframework.beans....

    Spring Boot技术知识点:如何读取不同路径里的applicationContext.xml配置文件1

    首先,了解Spring Boot的核心理念是简化Spring应用程序的初始设置,它默认并不支持从XML配置文件加载bean。然而,Spring Boot并没有完全摒弃XML,而是提供了方法让我们在需要时引入XML配置。 1. **启用XML配置支持*...

    加载jar包中的spring配置文件

    当我们构建一个基于Spring的应用时,经常需要从jar包中加载配置文件,以便管理依赖注入和其它服务。在Spring中,我们通常使用`classpath:`或`classpath*:`前缀来指定资源的位置。这两个前缀在处理多个类路径位置时有...

    加载spring 文件,在web.xml中的配置

    当我们谈论“加载Spring文件,在web.xml中的配置”时,主要是指如何在Web应用启动时初始化Spring IoC(Inversion of Control,控制反转)容器并加载配置文件。 1. **使用ContextLoaderListener** `&lt;listener&gt;`标签...

    spring读取配置文件

    这两个类都是Spring用于创建应用上下文的实现,主要用来加载XML配置文件并初始化Spring容器。 1. `ClassPathXmlApplicationContext`:此上下文主要用于加载类路径(classpath)下的XML配置文件。这意味着配置文件应...

    Spring XML配置的12个技巧

    Spring XML配置是Spring框架...以上技巧旨在提高Spring XML配置文件的可读性、可维护性和灵活性,帮助开发者更好地管理和组织Spring应用中的bean和依赖。在实践中,可以根据项目的具体需求和团队的习惯选择合适的策略。

Global site tag (gtag.js) - Google Analytics