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

【转】Spring加载xml配置文件的几种方法

阅读更多
一:Spring中的几种容器都支持使用xml装配bean,包括:
    XmlBeanFactory ,
    ClassPathXmlApplicationContext ,
    FileSystemXmlApplicationContext ,
    XmlWebApplicationContext
加载这些容器的配置文件的xml有一下几种常见的方法:
1:引用资源用XmlBeanFactory(不能实现多个文件相互引用)
		Resource resource = new ClassPathResource("appcontext.xml");
		BeanFactory factory = new XmlBeanFactory(resource);

      从factory中获取相应资源文件中的bean,但是这种bean读不到引用了其他文件中的bean!
2:引用应用上下文用ClassPathXmlApplicationContext
		ApplicationContext factory=new ClassPathXmlApplicationContext("classpath:applicationContext.xml"); 
		ApplicationContext factory=new ClassPathXmlApplicationContext("conf/userConfig.xml");   // src/conf 目录下的 
		ApplicationContext factory=new ClassPathXmlApplicationContext("file:G:/Test/src/appcontext.xml");

3:用文件系统的路径引用应用上下文用FileSystemXmlApplicationContext
		ApplicationContext factory=new FileSystemXmlApplicationContext("src/applicationContext.xml");      
		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");

注意:在2、3的加载方式中可以加载多个配置文件,获取到ApplicationContext 对象中
		String[] configs = {"applicationContext.xml","user_spring.xml"};
		ApplicationContext ctx = new ClassPathXmlApplicationContext(configs);
		//ApplicationContext ctx=new FileSystemXmlApplicationContext(configs);
		AbstractDao myUserDAO =  (AbstractDao) ctx.getBean("userDao");		

4:Web工程定制的加载方法 XmlWebApplicationContext
		ServletContext servletContext = request.getSession().getServletContext();
		ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext );


注:web.xml里面可以定义两种参数:
        1、application范围内的参数,存放在servletcontext中。<context-param>中的参数(可以指定多个文件)
        2、servlet范围内的参数,只能在servlet的init()方法中取得, <init-param>中的参数,在init方法中用this.getInitParameter("param1")获取



二:要是spring配置多个xml,并且这些文件相互应用的加载方式
1:在web.xml配置,应用服务去加载
  
 <servlet>
     <servlet-name>app</servlet-name>
     <servlet-class>
               org.springframework.web.servlet.DispatcherServlet
     </servlet-class>
     <context-param>
           <param-name>contextConfigLocation</param-name>
           <param-value>/WEB-INF/applicationContext*.xml,/WEB-INF/user_spring*.xml</param-value>
     </context-param>
     <load-on-startup>1</load-on-startup>  
  </servlet>

2:在/WEB-INF/applicationContext.xml配置应用服务去加载
  可以在applicationContext.xml中用import引入其他的配置文件
  
<import resource="user_spring.xml" />
分享到:
评论

相关推荐

    Spring 加载多个配置文件

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

    加载properties配置文件的几种方法

    本文将深入探讨在SSM框架下加载properties配置文件的几种常见方法。 1. **使用Spring的PropertyPlaceholderConfigurer** Spring提供了`PropertyPlaceholderConfigurer`类,可以方便地从.properties文件中读取属性...

    day38 04-Spring加载配置文件

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

    spring配置文件加密实现

    为了集成TE网络到Spring应用中,我们需要在应用程序启动时挂载这个加密文件系统,并确保Spring加载配置文件时通过这个加密层。这通常涉及到自定义类加载器或者修改Spring的初始化逻辑。当Spring尝试读取配置文件时,...

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

    如果XML配置文件位于`src/main/resources/META-INF/spring.factories`文件中,Spring Boot会自动加载它们。创建一个名为`org.springframework.boot.autoconfigure.EnableAutoConfiguration`的键,并将你的XML配置...

    SpringBoot之logback-spring.xml不生效的解决方法

    4. **排除其他日志配置文件**:如果存在多个日志配置文件(如`logback.xml`),Spring Boot可能会优先加载它们。删除或注释掉其他非`logback-spring.xml`的日志配置文件。 5. **验证配置文件内容**:确保`logback-...

    java实现Spring在XML配置java类的方法

    3. 使用Spring的IoC容器加载XML配置文件,根据bean定义创建和管理对象。 这个过程使得我们可以将类的创建和配置与实际业务逻辑分离,提高了代码的可维护性和可测试性,这也是Spring框架的核心优势之一。

    struts核心jar包及xml配置文件

    本压缩包包含了Struts2的核心库jar文件以及相关的XML配置文件,这些都是开发Struts2应用的基础组件。 **1. Struts2核心jar包** Struts2的核心jar包是实现框架功能的关键,主要包括以下几个部分: - **struts2-core...

    Java 加载配置文件的方式

    本篇文章将详细探讨Java中加载配置文件的几种常见方式。 1. **使用Properties类** Java标准库中的`java.util.Properties`类是处理.properties文件的主要工具。我们可以使用`Properties.load()`方法从InputStream中...

    整合Spring与Struts的几种方法

    2. **使用DelegatingRequestProcessor替换RequestProcessor**:在`struts-config.xml`中,将Struts的RequestProcessor替换为Spring的`DelegatingRequestProcessor`,并在Spring配置文件中定义与Struts `...

    Hibernate 和 Spring的结合配置文件

    同时,`Spring`的配置文件(如`applicationContext.xml`)中会包含`Hibernate`的相关bean定义,如SessionFactory、DataSource、TransactionManager等,实现对`Hibernate`的管理。 接着,`HQL`是`Hibernate`提供的...

    Java中spring读取配置文件的几种方法示例

    `ClassPathXmlApplicationContext`是Spring提供的一个实现`ApplicationContext`接口的类,它负责加载指定路径下的XML配置文件,解析文件中的Bean定义,并实例化Bean。在这个例子中,我们通过调用`getBean`方法获取了...

    详解SpringMVC加载配置Properties文件的几种方式

    本文将详细介绍几种SpringMVC加载Properties文件的方法。 1. 通过`context:property-placeholder`实现配置文件加载 这是最常用的方式,通过在Spring的配置文件(如`spring.xml`)中引入`context`命名空间,并使用`...

    spring为ApplicationContext提供的3种实现分别为:ClassPathXmlApplicationContext

    标题提到的“ClassPathXmlApplicationContext”是 Spring 提供的三种 ApplicationContext 实现之一,主要用来加载类路径下的 XML 配置文件。 ApplicationContext 的主要功能包括: 1. **Bean的管理**:...

    Spring获取webapplicationcontext,applicationcontext几种方法详解

    Spring 获取 WebApplicationContext、ApplicationContext 几种方法详解 在 Spring 框架中,获取 WebApplicationContext 和 ApplicationContext 对象是非常重要的,因为它们提供了访问 Spring 容器中的 Bean 对象的...

    三种数据库连接的配置XML文件

    这样的配置允许在不修改代码的情况下,通过修改XML配置文件就能改变数据库连接参数,增加了程序的灵活性和可维护性。 XML文件在数据库连接中的角色主要是配置和管理数据源,包括但不限于以下几点: 1. 存储数据库...

    Spring通过XML实现AOP

    - **配置 AOP**:在 Spring 的 XML 配置文件中启用 AOP 并定义切面。 **3. XML 配置方式** 在 XML 配置中,我们需要在 `&lt;aop:config&gt;` 标签内定义切入点和通知。下面是一个简单的示例: ```xml &lt;!-- 定义切入点...

    DWR.xml配置文件说明书(含源码)

    DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...

    spring aop xml实现

    在Spring中实现AOP,我们需要在XML配置文件中定义以下几个部分: 1. **配置Spring容器**:首先,确保Spring的配置文件(如`applicationContext.xml`)已经包含了AOP的命名空间,通常添加如下: ```xml xmlns:aop=...

    Spring的log4j以及配置文件

    这允许我们在不重启应用的情况下,通过修改外部的配置文件来调整日志级别和输出方式。 总的来说,理解和配置好Spring中的Log4j对于开发和维护Spring应用至关重要。通过合理配置`log4j.properties`文件,开发者可以...

Global site tag (gtag.js) - Google Analytics