林宜鹤

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  一、属性注入

  上篇我们简单提到依赖注入的用途。回顾一下所讲内容,发现在object节点下使用了<property name="Tool" ref="computer"/>。而property 标签正是用来属性注入的。而ref是用来标识是关联到哪个object。而name属性是指属性名。如下:<object id="modernPerson" type="SpringNetIoC.ModernPerson, SpringNetIoC">
        
<property name="Tool" ref="computer"/>
</object>

值类型的注入是需要使用property 节点的value属性。如<property name="Name" value="Liu Dong"/>

作为内联类型可以使用如下:
<property name="Friend">
          <object type="SpringNetDi.Person, SpringNetDi"/>
</property>
同理,内联类型可以是循环引用的对象(见代码处)。

  二、构造函数注入

构造器注入使用constructor-arg标签作为标识。同样具有于属性注入相同的方式,使用namerefvalue作为构造器注入的属性,如下:
<constructor-arg name="argPerson" ref="person"/>
<constructor-arg name="intProp" value="1"/>


 

  程序的代码如下:

 

    public class Person
    
{
        
public string Name getset; }
        
public int Age getset; }
        
public Person Friend getset; }
    }

 

PersonDao

 

App.config

 

 

Program

 

  输出效果如下:

 

 

 

 

 

 代码下载

 

 原文网址:http://www.cnblogs.com/GoodHelper/archive/2009/11/01/SpringNET_IoC1.html

posted on 2010-08-30 19:51  林宜鹤  阅读(291)  评论(0编辑  收藏  举报