`

spring的第一个IoC实例

阅读更多
Spring框架是一种管理业务对象的框架结构
控制反转IoC,原来由应用程序控制的”对象之间的关系“转交给由外部容器来实现控制。
控制反转用到的重要组件有BeanFactory接口,ApplicationContext接口以及Spring的配置文件
在Myeclipse环境下,新建一个java项目或web项目,添加spring功能(即添加spring所需的jar包)
将自动生成applicationContext.xml配置文件,这是spring的配置文件,非常重要。
初始文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
</beans>

新建一个简单的JavaBean,
package com.qdu.sun.spring;

public class HelloWorld {

	private String greeting;
	public HelloWorld(){
		
	}
	public void sayGreeting(){
		System.out.println(this.greeting);
	}
	public HelloWorld(String greeting){
		this.greeting  = greeting;
	}
	public void setGreeting(String greeting) {
		this.greeting = greeting;
	}
	
}

并在spring的配置文件中进行设置,有两种方式传入参数,set方式和构造函数方式
即在原始的配置文件基础上,添加一个bean
<bean id="greetingService" class="com.qdu.sun.spring.HelloWorld"
		abstract="false" lazy-init="default" autowire="default"
		dependency-check="default">
		<!-- set方式传入参数 -->
		<property name="greeting">
			<value type="java.lang.String">Hello world!</value>
		</property>
		<!-- 构造函数方式传入参数 -->
		<constructor-arg>
			<value type="java.lang.String">Hello world!</value>
		</constructor-arg>
	</bean>

接着进行简单的测试
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;

import com.qdu.sun.spring.HelloWorld;

public class SpringTest {

	public static void main(String[] args) {
		BeanFactory factory = new XmlBeanFactory(new ClassPathResource(
				"applicationContext.xml")); //读取classpath下的配置文件,无需指定路径
		HelloWorld hw = (HelloWorld) factory.getBean("greetingService");
		hw.sayGreeting();

	}

}

看着很简单吧!!
分享到:
评论

相关推荐

    Spring 之IoC入门实例

    这是俺写的第一个IoC入门实例 刚刚学的Spring

    模拟实现Spring的IOC

    1、Spring主要两个作用:实例化Bean,动态装配Bean。并将所有的bean放到spring容器中,调用时从容器中取。Spring容器就是一个bean的Map:private Map, Object&gt; beans = new HashMap, Object&gt;(); 2、本工程,模拟...

    Spring 实例源码

    在这篇由三部分组成的 Spring 系列 的第 1 部分中,我将介绍 Spring 框架。我先从框架底层模型的角度描述该框架的功能,然后将讨论两个最有趣的模块:Spring 面向方面编程(AOP)和控制反转 (IOC) 容器。接着将...

    SSM框架的学习与应用-Java EE企业级应用开发学习记录-(第六天)初识Spring框架

    Spring IoC的控制反转实例:通过一个示例演示了使用Spring的IoC容器实现控制反转的过程。你将会看到如何配置Spring的IoC容器,定义和注册Bean,以及如何通过注解或XML配置文件来完成依赖注入。 简单工厂模式的实例...

    Spring攻略PDF版

     3.2 实例化Spring IoC容器   3.2.1 问题描述   3.2.2 解决方案   3.2.3 实现方法   3.3 解决构造器歧义   3.3.1 问题描述   3.3.2 解决方案   3.3.3 实现方法   第4章 高级...

    spring 3.0 jar 所有开发包及开发项目实例

    spring 3.0 jar 最新所有开发包及开发项目实例 spring 3.0已经全面支持OSGi了。 各发行包的大致描述如下: org.springframework.asm-3.0.0.M4.jar: 提供对ASM(一个字节码框架)的简单封装 org.springframework....

    Spring攻略中文版PDF

     3.2 实例化Spring IoC容器   3.2.1 问题描述   3.2.2 解决方案   3.2.3 实现方法   3.3 解决构造器歧义   3.3.1 问题描述   3.3.2 解决方案   3.3.3 实现方法   第4章 高级...

    spring(一)–概念和历史/hellospring/IOC创建对象的方式/Spring配置/set注入/c命名和p命名空间注入/bean的作用域

    Spring的形成,最初来自Rod Jahnson所著的一本很有影响力的书籍《Expert One-on-One J2EE Design and Development》,就是在这本书中第一次出现了Spring的一些核心思想,该书出版于2002年。另外一本书《Expert One-...

    Spring攻略英文版(附带源码)

     3.2 实例化Spring IoC容器   3.2.1 问题描述   3.2.2 解决方案   3.2.3 实现方法   3.3 解决构造器歧义   3.3.1 问题描述   3.3.2 解决方案   3.3.3 实现方法   第4章 高级Spring IoC...

    第一个Spring程序(DI的实现).docx

    依赖注入:Dependency Injection(DI)与控制反转(IoC),不同角度但是同一个概念。首先我们理解一点在传统方式中我们使用new的方式来创建一个对象,这会造成对象与被实例化的对象之间的耦合性增加以致不利于维护...

    跟我学spring3(1-7)

    【第一章】 Spring概述 ——跟我学Spring3 【第二章】 IoC 之 2.1 IoC基础 ——跟我学Spring3 【第二章】 IoC 之 2.2 IoC 容器基本原理 ——跟我学Spring3 【第二章】 IoC 之 2.3 IoC的配置使用——跟我学Spring3 ...

    JAVA spring 系列案例50个和学习资料

    Spring系列第1篇:为何要学spring?Spring系列第2篇:控制反转(IoC)与依赖注入(DI)。Spring系列第3篇:Spring容器基本使用及原理。Spring系列第4篇:xml中bean定义详解(-)Spring系列第5篇:创建bean实例这些方式...

    Spring+3.x企业应用开发实战光盘源码(全)

    第1章:对Spring框架进行宏观性的概述,力图使读者建立起对Spring整体性的认识。  第2章:通过一个简单的例子展现开发Spring Web应用的整体过程,通过这个实例,读者可以快速跨入Spring Web应用的世界。  第3章:...

    Spring的学习笔记

    第一课:面向抽象编程 4 第二课:Jdom的基本使用 4 第三课:模拟Spring功能 5 第四课:搭建sping的运行环境 8 一、 建立一个新的项目 8 二、 建立spring的配置文件 8 三、 引入spring的jar包 8 四、 测试代码: 8 五...

    Spring第01天1

    }4.1.3 使用实例工厂方法实例化4.2 bean的作用域掌握红色两个常用的即可类别说明singleton在Spring IoC容器中仅存在一个Bean实例,

    spring第二天.pdf

    课程目标 1. 搞清楚BeanFactory家族的接口和类的作用 2. 搞清楚ApplicationContext家族的接口和类的作用 3. 搞清楚BeanDefinitionRegistry和SingletonBeanRegistry的作用 4. 搞清楚注册BeanDefinition流程中各个类的...

    spring.net中文手册在线版

    25.2.2.第一个对象定义 25.2.3.属性注入 25.2.4.构造器参数注入 25.2.5.总结 25.2.6.日志 25.3.应用程序上下文和IMessageSource接口 25.3.1.简介 25.4.应用程序上下文和IEventRegistry接口 25.4.1.简介 25.5.对象池...

    Spring攻略(第二版 中文高清版).part1

    12.2 创建第一个Spring Roo项目 486 12.2.1 问题 486 12.2.2 解决方案 486 12.2.3 工作原理 486 12.3 把现有项目导入SpringSource Tool Suite 491 12.3.1 问题 491 12.3.2 解决方案 492 12.3.3 工作...

    Spring.3.x企业应用开发实战(完整版).part2

    Spring3.0是Spring在积蓄了3年之久后,隆重推出的一个重大升级版本,进一步加强了Spring作为Java领域第一开源平台的翘楚地位。  Spring3.0引入了众多Java开发者翘首以盼的新功能和新特性,如OXM、校验及格式化框架...

    跟开涛学Spring

    1.27 【第六章】 AOP 之 6.8 切面实例化模型 ——跟我学spring3 . . . . . . . . . . . . . . . . . . . . . . . . . . . .282 1.28 【第六章】 AOP 之 6.9 代理机制 ——跟我学spring3 . . . . . . . . . . . . . ...

Global site tag (gtag.js) - Google Analytics