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

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的区别

classpath:前缀是不需要的,默认就是指项目的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"));
  }
}

 



分享到:
评论

相关推荐

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

    通过使用 `ClassPathXmlApplicationContext` 类和事件监听器,开发者可以轻松地扩展应用的功能,同时也能更好地理解和控制 Spring 应用程序的生命周期。 总之,在实际开发过程中,熟练掌握这些事件的触发时机以及...

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

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

    spring创建bean简单示例

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

    简单Spring容器实现

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

    最简单的spring demo

    这就是一个最简单的Spring Demo,展示了如何使用Spring的依赖注入和配置管理。你可以根据需要扩展这个例子,比如引入AOP来实现日志记录,或者使用Spring Data访问数据库。Spring提供了丰富的API和模块,可以满足各种...

    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来...

    spring容器简单实例

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

    Spring3最简单的demo

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

    Eclipse spring基本配置步骤

    例如,创建一个简单的HelloWorld类: ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=...

    springspring详细教程下载

    为了更好地理解Spring框架的使用,以下是一个简单的Spring Hello World示例: 1. **创建项目**:首先,在IDE中创建一个新的Java项目,命名为`springHelloWorld`。 2. **添加Spring依赖**:将Spring框架的JAR包...

    利用spring实现打印机

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

    Spring的简单实例代码

    本实例将详细介绍如何使用Spring通过XML配置文件来创建和管理Bean。 在Spring框架中,Bean是应用程序中的对象,由Spring容器负责创建、初始化、装配以及管理。这些对象通常代表应用程序中的业务逻辑组件或数据访问...

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

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

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

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

    spring框架jar包

    - 实例化IoC容器:使用ClassPathXmlApplicationContext或AnnotationConfigApplicationContext根据配置启动容器。 - 获取Bean:通过IoC容器的getBean方法获取实例化的对象。 - 使用AOP:定义切面类,使用@Aspect、...

    java-spring整合

    下面是一个简单的 Java-Spring 整合示例: 首先,创建一个 Spring 配置文件(applicationContext.xml),用于定义 Bean 的实例化和依赖项注入: ```xml <beans xmlns="http://www.springframework.org/schema/...

    运行Spring的所有jar包包括lib.zip

    然而,对于简单的项目或者快速原型开发,直接使用lib.zip并手动管理类路径也是可行的。 总的来说,"运行Spring的所有jar包包括lib.zip"意味着需要对Spring框架有深入理解,能够正确配置和管理依赖,以确保应用程序...

    Spring练习

    3. 初始化Spring容器:使用`ClassPathXmlApplicationContext`或`FileSystemXmlApplicationContext`等类加载配置文件,创建Spring容器。 4. 获取bean:通过Spring容器的`getBean`方法获取需要的bean实例,然后就可以...

    使用Spring3.0框架开发Hello World例子

    在本文中,我们将深入探讨如何使用Spring 3.0框架开发一个简单的"Hello World"应用程序。Spring是一个极其流行的企业级Java应用框架,它提供了一种模块化、可扩展的方式来构建应用,强调依赖注入(Dependency ...

Global site tag (gtag.js) - Google Analytics