`
- 浏览:
297502 次
- 性别:
- 来自:
南京
-
转载:spring 中加载xml配置文件的几种方法
原文地址:
http://noobjava.iteye.com/blog/976472
-
- 一: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" />
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
除了直接通过 ApplicationContext 或者 ContextLoaderListener 加载配置文件,还可以在现有的 XML 配置文件中使用 `<import>` 标签导入其他的配置文件。这种方式允许开发者在主配置文件中引用其他辅助配置文件,...
本文将深入探讨在SSM框架下加载properties配置文件的几种常见方法。 1. **使用Spring的PropertyPlaceholderConfigurer** Spring提供了`PropertyPlaceholderConfigurer`类,可以方便地从.properties文件中读取属性...
如果XML配置文件位于`src/main/resources/META-INF/spring.factories`文件中,Spring Boot会自动加载它们。创建一个名为`org.springframework.boot.autoconfigure.EnableAutoConfiguration`的键,并将你的XML配置...
Spring加载XML配置文件的过程分为几个步骤: 1. **定位配置文件**:根据提供的路径找到XML配置文件。 2. **解析XML文件**:使用DOM或SAX解析器将XML内容转换为内存中的对象结构。 3. **构建BeanDefinition**:从解析...
为了集成TE网络到Spring应用中,我们需要在应用程序启动时挂载这个加密文件系统,并确保Spring加载配置文件时通过这个加密层。这通常涉及到自定义类加载器或者修改Spring的初始化逻辑。当Spring尝试读取配置文件时,...
本压缩包包含了Struts2的核心库jar文件以及相关的XML配置文件,这些都是开发Struts2应用的基础组件。 **1. Struts2核心jar包** Struts2的核心jar包是实现框架功能的关键,主要包括以下几个部分: - **struts2-core...
3. 使用Spring的IoC容器加载XML配置文件,根据bean定义创建和管理对象。 这个过程使得我们可以将类的创建和配置与实际业务逻辑分离,提高了代码的可维护性和可测试性,这也是Spring框架的核心优势之一。
本篇文章将详细探讨Java中加载配置文件的几种常见方式。 1. **使用Properties类** Java标准库中的`java.util.Properties`类是处理.properties文件的主要工具。我们可以使用`Properties.load()`方法从InputStream中...
2. **使用DelegatingRequestProcessor替换RequestProcessor**:在`struts-config.xml`中,将Struts的RequestProcessor替换为Spring的`DelegatingRequestProcessor`,并在Spring配置文件中定义与Struts `...
- ClassPathXmlApplicationContext:用于从类路径下的XML配置文件中加载Spring容器。 - FileSystemXmlApplicationContext:从文件系统的XML配置文件加载容器。 - BeanUtils:提供了一组工具方法,如...
4. **排除其他日志配置文件**:如果存在多个日志配置文件(如`logback.xml`),Spring Boot可能会优先加载它们。删除或注释掉其他非`logback-spring.xml`的日志配置文件。 5. **验证配置文件内容**:确保`logback-...
标题提到的“ClassPathXmlApplicationContext”是 Spring 提供的三种 ApplicationContext 实现之一,主要用来加载类路径下的 XML 配置文件。 ApplicationContext 的主要功能包括: 1. **Bean的管理**:...
3. **定义安全规则**: 在Spring Security配置文件中定义具体的认证和授权规则,如使用数据库存储用户信息、使用自定义登录页面等。 #### 四、Spring Security 2.x 概览 Spring Security 2.x不仅提供了强大的功能...
在Spring中实现AOP,我们需要在XML配置文件中定义以下几个部分: 1. **配置Spring容器**:首先,确保Spring的配置文件(如`applicationContext.xml`)已经包含了AOP的命名空间,通常添加如下: ```xml xmlns:aop=...
在实验小例子中,我们可能看到这几种配置方式的组合。Spring会首先读取这些配置源,将其转换为Bean定义。 2. **Bean定义注册**: 解析后的配置会被转化为BeanDefinition对象,包含Bean的类名、依赖、初始化方法等...
这是最常用的方式,通过在Spring的配置文件(如`spring.xml`)中引入`context`命名空间,并使用`context:property-placeholder`标签来指定Properties文件的位置。 ```xml <?xml version="1.0" encoding="UTF-8"?> ...
`ClassPathXmlApplicationContext`是Spring提供的一个实现`ApplicationContext`接口的类,它负责加载指定路径下的XML配置文件,解析文件中的Bean定义,并实例化Bean。在这个例子中,我们通过调用`getBean`方法获取了...
这样的配置允许在不修改代码的情况下,通过修改XML配置文件就能改变数据库连接参数,增加了程序的灵活性和可维护性。 XML文件在数据库连接中的角色主要是配置和管理数据源,包括但不限于以下几点: 1. 存储数据库...
这允许我们在不重启应用的情况下,通过修改外部的配置文件来调整日志级别和输出方式。 总的来说,理解和配置好Spring中的Log4j对于开发和维护Spring应用至关重要。通过合理配置`log4j.properties`文件,开发者可以...
2. **XML配置**:在传统的XML配置中,可以使用`lazy-init="true"`属性实现Bean的懒加载。如: ```xml ``` 3. **使用`ApplicationContext`接口**:程序可以通过`ApplicationContext`的`getBean`方法按需加载特定...