`

Spring中ClassPathXmlApplicationContext类的简单使用

阅读更多

一.简单用ApplicationContext做测试,获得Spring中定义的Bean实例(对象)

        可以用:

ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
RegisterDAO registerDAO = (RegisterDAO)ac.getBean("RegisterDAO");

        如果是两个以上:

ApplicationContext ac = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","dao.xml"});

        或者用通配符:

ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/*.xml");

 

二.ClassPathXmlApplicationContext[只能读放在web-info/classes目录下的配置文件]和FileSystemXmlApplicationContext的区别

        ClassPathXmlApplicationContext,前缀是不需要的,默认就是指项目的classpath路径下面;如果要使用绝对路径,需要加上file:前缀表示这是绝对路径。

        对于FileSystemXmlApplicationContext,默认表示的是两种:

        1).没有盘符的是项目工作路径,即项目的根目录;

        2).有盘符表示的是文件绝对路径。

        如果要使用classpath路径,需要前缀classpath:

public class HelloClient {

  protected static final Log log = LogFactory.getLog(HelloClient.class);

  public static void main(String[] args) {
    // Resource resource = new ClassPathResource("appcontext.xml");
    // BeanFactory factory = new XmlBeanFactory(resource);

    // 用classpath路径
    // ApplicationContext factory = new ClassPathXmlApplicationContext("classpath:appcontext.xml");
    // ApplicationContext factory = new ClassPathXmlApplicationContext("appcontext.xml");

    // ClassPathXmlApplicationContext使用了file前缀是可以使用绝对路径的
    // ApplicationContext factory = new ClassPathXmlApplicationContext("file:F:/workspace/example/src/appcontext.xml");

    // 用文件系统的路径,默认指项目的根路径
    // ApplicationContext factory = new FileSystemXmlApplicationContext("src/appcontext.xml");
    // ApplicationContext factory = new FileSystemXmlApplicationContext("webRoot/WEB-INF/appcontext.xml");


    // 使用了classpath:前缀,这样,FileSystemXmlApplicationContext也能够读取classpath下的相对路径
    // ApplicationContext factory = new FileSystemXmlApplicationContext("classpath:appcontext.xml");
    // ApplicationContext factory = new FileSystemXmlApplicationContext("file:F:/workspace/example/src/appcontext.xml");

    // 不加file前缀
    ApplicationContext factory = new FileSystemXmlApplicationContext("F:/workspace/example/src/appcontext.xml");
    IHelloWorld hw = (IHelloWorld)factory.getBean("helloworldbean");
    log.info(hw.getContent("luoshifei"));
  }
}

 

文章来源:http://www.blogjava.net/xcp/archive/2011/06/22/352821.html

分享到:
评论

相关推荐

    spring容器的触发事件 ClassPathXmlApplicationContext的start()方法的用法

    示例代码中定义了一个简单的 Spring 应用程序,通过 `ClassPathXmlApplicationContext` 来初始化一个 Spring 容器,并注册了一些事件监听器。 ```java package ioc.test; import org.springframework.context....

    Spring获取ApplicationContext对象工具类的实现方法

    在Spring中,典型的获取ApplicationContext对象的方式是使用ApplicationContext接口的一个实现类,如ClassPathXmlApplicationContext。这是一个根据给定XML文件的类路径的上下文实现。通常我们会在初始化Spring IoC...

    Spring-Reference_zh_CN(Spring中文参考手册)

    6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...

    helloIoc.zip spring ioc控制反转简单测试代码

    3. **测试类**:如`HelloIocTest`,使用Spring的`ClassPathXmlApplicationContext`来启动容器,并通过容器获取bean进行测试。 测试代码可能会演示如何在Spring配置文件中声明bean,如何通过setter方法注入依赖,...

    简单Spring容器实现

    本主题将深入探讨“简单Spring容器实现”,基于提供的标签“源码”和“工具”,我们将聚焦于Spring容器的原理及其简易实现。下面,我们先来理解Spring容器的核心概念,然后逐步探索其内部机制,并通过一个名为...

    最简单的spring demo

    在本文中,我们将深入探讨"最简单的Spring Demo",这是一个基于Spring框架的入门级实例,旨在帮助初学者快速理解Spring的核心概念。Spring是Java企业级应用开发中的一个关键框架,它提供了一整套服务,包括依赖注入...

    Spring3最简单的demo

    《Spring3最简单的DEMO详解》 在Java开发领域,Spring框架无疑是最为重要的轻量级框架之一,它以其强大的依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)功能,极大地...

    spring创建bean简单示例

    接下来,我们将通过一个简单的步骤来展示如何在Spring中创建Bean: 1. **定义Bean的类**: 首先,创建一个Java类,例如`MyService`,它代表一个Bean。这个类可能包含一些业务逻辑。 ```java public class ...

    Spring中ApplicationContext加载机制

    Spring中ApplicationContext加载机制 ApplicationContext 是 Spring 框架中的核心组件之一,负责加载和管理应用程序中的 Bean 对象。在 Web 应用程序中,ApplicationContext 的加载机制是非常重要的, Spring 提供...

    Spring中Quartz的配置

    在Spring中使用Quartz进行任务调度时,首先需要创建一个被调度的类。示例代码如下: ```java package com.kay.quartz; public class QuartzJob { public void work() { System.out.println("Quartz的任务调度!...

    利用spring实现打印机

    接下来,我们将利用Spring的XML配置文件来声明`LaserPrinter`为`Printer`接口的实现,并注入到需要使用打印机的类中。在`beans.xml`配置文件中,我们这样定义: ```xml ``` 然后,假设我们有一个`DocumentService...

    Eclipse spring基本配置步骤

    在本例中,我们使用的版本是Spring 2.5.5,对应的jar文件为`spring-2.5.5.jar`。同时,由于Spring框架通常依赖于Apache Commons Logging,所以还需要`commons-logging-1.1.1.jar`这个库。 **步骤1:创建Java项目** ...

    spring容器简单实例

    使用`ClassPathXmlApplicationContext`类加载配置文件,创建ApplicationContext容器: ```java ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); ``` 4. **获取bean** 通过...

    springspring详细教程下载

    4. **读取并使用配置**:在主程序中,使用`ClassPathXmlApplicationContext`类加载配置文件,并通过`getBean`方法获取bean实例,调用其方法。 ### Spring框架的应用上下文(ApplicationContext) `...

    spring-framework 5 中文 参考手册 中文文档

    在Spring中,可以通过web.xml中的配置来自动实例化ApplicationContext,或者在Eclipse等集成开发环境中通过简单的鼠标点击或键盘输入来快速创建配置。这样,开发者可以集中精力在业务逻辑的实现上,而不必担心底层的...

    Spring的简单实例代码

    在实际的应用中,我们可以通过Spring的`ApplicationContext`来获取并使用配置的Bean。以下是如何在Java代码中加载XML配置并获取Bean的示例: ```java import org.springframework.context.ApplicationContext; ...

    spring最简单的例子

    4. **启动应用**:在App.java中,使用Spring的ClassPathXmlApplicationContext(或更现代的SpringApplication.run)来启动应用上下文,并获取和调用HelloWorld的bean。 5. **运行程序**:通过命令行或者IDE运行App....

    简单学习使用Spring+Velocity发送邮件

    此外,Spring还提供了一个`SimpleMailMessage`类,用于创建简单的邮件消息对象,包括收件人、主题、正文等内容。 接下来,我们引入Velocity。Velocity模板引擎允许我们将动态数据插入到静态的HTML模板中。例如,你...

    Spring2.5 IOC的简单实现

    如果采用注解配置,可以省略 `beans.xml` 文件,而是直接在 `MyClass.java` 中添加 `@Component` 注解,并在主类中使用 `@Configuration` 和 `@ComponentScan` 注解加载组件: ```java package com.example; ...

Global site tag (gtag.js) - Google Analytics