一.简单用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` 来初始化一个 Spring 容器,并注册了一些事件监听器。 ```java package ioc.test; import org.springframework.context....
在Spring中,典型的获取ApplicationContext对象的方式是使用ApplicationContext接口的一个实现类,如ClassPathXmlApplicationContext。这是一个根据给定XML文件的类路径的上下文实现。通常我们会在初始化Spring IoC...
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来...
3. **测试类**:如`HelloIocTest`,使用Spring的`ClassPathXmlApplicationContext`来启动容器,并通过容器获取bean进行测试。 测试代码可能会演示如何在Spring配置文件中声明bean,如何通过setter方法注入依赖,...
本主题将深入探讨“简单Spring容器实现”,基于提供的标签“源码”和“工具”,我们将聚焦于Spring容器的原理及其简易实现。下面,我们先来理解Spring容器的核心概念,然后逐步探索其内部机制,并通过一个名为...
在本文中,我们将深入探讨"最简单的Spring Demo",这是一个基于Spring框架的入门级实例,旨在帮助初学者快速理解Spring的核心概念。Spring是Java企业级应用开发中的一个关键框架,它提供了一整套服务,包括依赖注入...
《Spring3最简单的DEMO详解》 在Java开发领域,Spring框架无疑是最为重要的轻量级框架之一,它以其强大的依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)功能,极大地...
接下来,我们将通过一个简单的步骤来展示如何在Spring中创建Bean: 1. **定义Bean的类**: 首先,创建一个Java类,例如`MyService`,它代表一个Bean。这个类可能包含一些业务逻辑。 ```java public class ...
Spring中ApplicationContext加载机制 ApplicationContext 是 Spring 框架中的核心组件之一,负责加载和管理应用程序中的 Bean 对象。在 Web 应用程序中,ApplicationContext 的加载机制是非常重要的, Spring 提供...
在Spring中使用Quartz进行任务调度时,首先需要创建一个被调度的类。示例代码如下: ```java package com.kay.quartz; public class QuartzJob { public void work() { System.out.println("Quartz的任务调度!...
接下来,我们将利用Spring的XML配置文件来声明`LaserPrinter`为`Printer`接口的实现,并注入到需要使用打印机的类中。在`beans.xml`配置文件中,我们这样定义: ```xml ``` 然后,假设我们有一个`DocumentService...
下面是一段简单的示例代码,用于展示如何使用Spring框架创建Bean实例并进行依赖注入: ```java // 创建Spring容器 ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); // ...
在本例中,我们使用的版本是Spring 2.5.5,对应的jar文件为`spring-2.5.5.jar`。同时,由于Spring框架通常依赖于Apache Commons Logging,所以还需要`commons-logging-1.1.1.jar`这个库。 **步骤1:创建Java项目** ...
使用`ClassPathXmlApplicationContext`类加载配置文件,创建ApplicationContext容器: ```java ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); ``` 4. **获取bean** 通过...
4. **读取并使用配置**:在主程序中,使用`ClassPathXmlApplicationContext`类加载配置文件,并通过`getBean`方法获取bean实例,调用其方法。 ### Spring框架的应用上下文(ApplicationContext) `...
在Spring中,可以通过web.xml中的配置来自动实例化ApplicationContext,或者在Eclipse等集成开发环境中通过简单的鼠标点击或键盘输入来快速创建配置。这样,开发者可以集中精力在业务逻辑的实现上,而不必担心底层的...
在实际的应用中,我们可以通过Spring的`ApplicationContext`来获取并使用配置的Bean。以下是如何在Java代码中加载XML配置并获取Bean的示例: ```java import org.springframework.context.ApplicationContext; ...
4. **启动应用**:在App.java中,使用Spring的ClassPathXmlApplicationContext(或更现代的SpringApplication.run)来启动应用上下文,并获取和调用HelloWorld的bean。 5. **运行程序**:通过命令行或者IDE运行App....
此外,Spring还提供了一个`SimpleMailMessage`类,用于创建简单的邮件消息对象,包括收件人、主题、正文等内容。 接下来,我们引入Velocity。Velocity模板引擎允许我们将动态数据插入到静态的HTML模板中。例如,你...
如果采用注解配置,可以省略 `beans.xml` 文件,而是直接在 `MyClass.java` 中添加 `@Component` 注解,并在主类中使用 `@Configuration` 和 `@ComponentScan` 注解加载组件: ```java package com.example; ...