`
dogasshole
  • 浏览: 836330 次
文章分类
社区版块
存档分类
最新评论

Spring依赖注入的原理(控制反转 IOC)

 
阅读更多

1.配置文件主要如下:

<bean id="personService" class="cn.cast.service.impl.PersonServiceBean">
<property name="personDao1" ref="personDao1"></property>

这里的property 中还有个 value=“”属性可以传入参数。


<!-- 使用内部bean进行注入
<property name="personDao">

<bean class="cn.itcast.dao.impl.PersonDaoBean"/>

</property>
<property name="name" value="cast"/>
<property name="id" value="88"/> --> 传入2个参数cast和88.

</bean>

<bean id="personDao1" class="cn.cast.dao.impl.PersonDaoBean"></bean>

这里要注意property name=“personDao1”一定要和PersonServiceBean中的set方法名匹配,否则不能注入这个bean(错误信息

Bean property 'personDao2' is not writable or has an invalid setter method. 无效方法 )

2.PersonServiceBean类下实现的方法:

public class PersonServiceBean implements PersonService{
private PersonDaoBean personDao1;

public PersonDaoBean getPersonDao1() {
return personDao1;
}
public void setPersonDao1(PersonDaoBean personDao1) {
this.personDao1 = personDao1;
}
public void save() {
personDao1.add();
}
}
3.junit测试类实现测试:

@Test
public void instanceSpring(){
AbstractXmlApplicationContext ctx=new ClassPathXmlApplicationContext("bean.xml");
PersonServiceBean ps=(PersonServiceBean) ctx.getBean("personService");
// PersonServiceBean ps2=(PersonServiceBean) ctx.getBean("personService");
// System.out.println(ps==ps2);
ps.save();
// ctx.close();
}

这样personDao1的控制权就转交了。

分享到:
评论

相关推荐

    Spring——IOC(控制反转)与DI(依赖注入).docx

    控制反转IOC(Inversion of Control)是一种设计思想,DI(依赖注入)是实现IOC的一种方法 。在没有IOC的程序中,我们使用面向对象编程,对象的创建于对象间的依赖完全硬编码在程序中,对象的创建有程序自己控制;...

    Spring框架控制反转IOC和依赖注入DI详解

    本文介绍了Spring框架中的控制反转IOC和依赖注入DI,欢迎阅读,共同学习,一起进步。 Spring框架基础参考:深入学习Spring基础 文章目录一.入门程序和IOC简介二.IOC-控制反转三.DI-依赖注入四. IOC和DI五.Spring...

    Spring_01_入门篇_依赖注入(控制反转)_XML

    此文档仅供初学者学习,包括Spring的依赖注入(控制反转)的详细实例。以三层贯穿实例(持久层、业务层、控制层),由MAIN方法直接调用测试用例。

    springIOC控制反转 依赖注入实例

    springIOC 小例子 附带源码 适合新手学习

    Spring IOC原理

    Spring IOC原理,类的继承关系,依赖注入和控制反转等关系

    springioc和spring aop

    控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找...

    Java - Spring-IoC(Inverse of Control)–> 控制反转

    ① IoC(Inverse of Control)–&gt; 控制反转 IoC理念: 对象的创建工作交给IoC容器 对象间的依赖关系交给IoC容器查找,在运行期间确定 依赖注入是IoC的主要实现方式 IoC的实现机制: 工厂模式 + 反射机制:工厂模式...

    Spring.NET控制反转(IoC)和面向切面(AOP)的容器框架

    Spring.NET 控制反转(Inversion of Control,英文缩写为IoC),也叫依赖注入(Dependency Injection)。我个人认为控制反转的意思是依赖对象(控制权)发生转变,由最初的类本身来管理依赖对象转变为IoC框架来管理...

    IOC控制反转&DI依赖注入

    该项目实现了简单的IOC技术思想和DI依赖注入

    Spring中依赖注入与容器

    IoC:控制反转  DI:依赖注入  什么是依赖?一个组件(对象)的运行需要用到另一个组件(对象),称这种关系为依赖关系  举例:鱼依赖水,生命依赖空气、阳光、水、食物 组件依赖的资源(其他组件)由所在环境...

    spring的详细介绍

    控制反转Ioc(Invertion of control)依赖注入(Dependency Injection) 4. Ioc容器作用 5. Spring中注入方式 6. 注入的数据类型 7. 创建bean实例的方式 8. Spring中Bean实例的设计 9. 创建Bean实例的时间 10. 自动...

    IOC控制反转学习文档

    Spring框架学习中的核心,控制反转IOC,理解Spring框架主要注入所依赖的资源,解耦开发

    我的Pro Spring 学习笔记 之二 控制反转(IoC)和依赖注入(DI), Spring初步

    源代码 博文链接:https://danielkwo.iteye.com/blog/40945

    控制反转(IoC)与依赖注入(DI)1

    1. 软件系统在没有引IOC容器之前,如图1所示,对象A依赖于对象B,那么对象A在初始化或者 2. 软件系统在引IOC容器之后,这种情形就完全改变了,如图2所示

    spring_ioc.docx

    web开发技术spring框架控制反转思想IOC学习笔记,并对java的静态代理和动态代理进行了相关叙述

    spring.net依赖注入Demo

    spring.net是为.net开发者提供的一个控制反转操作框架也称作依赖注入。 此demo仅提供参考spring.net mvc+三层

    基于框架的Web开发-IoC(控制反转)和DI(依赖注入)入门.doc

    1.2 IoC(控制反转)和DI(依赖注入)入门 1 传统的Java类 在工程下创建包ioc,在ioc包中创建类Test。(为了看起来清楚,将三个类写在了同一个Java文件中,其中唯一的public类为Test)。类的含义和关系如下: Car类...

Global site tag (gtag.js) - Google Analytics