快速业务通道

Spring.net(二)----初探IOC容器 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19

Spring.net(二)----初探IOC容器

时间:2011-02-09 博客园 Beniao

我在上一篇关于Spring.net的文章“Spring.NET框架简介及模块说明 ”中很详细的介绍了,本文就不旧话从提。我门就直奔主题吧。

1.首先了解两个接口.

IObjectFactory接口和IApplicationContext接口:他两个称为“容器”或“IOC容器”。

Spring.net框架的核心原则是非侵入性。

IObjectFactory接口是初始化、配置及管理对象的实际容器。

IObjectFactory全限定名为Spring.Objects.Factory.IObjectFactory,IObjectFactory接口有多个实现,其中最

常用的是Spring.Objects.Factory.XML.XmlObjectFactory。

2.对象定义的XML文件

在app.config或是web.config中加入

<spring>    <context type="Spring.Context.Support.XmlAppliationContext",Spring.Core"/>    <resource uri=file://objects.xml//>   </spring>

注意:context的type属性是可以省略的。

3.spring和context的顺序是有限制的,在Spring.net框架里已经将“spring/context”作为字符串常量定义在了AbstractApplicationContext类中以来表示上下文的接点名称。可通过:

IApplicationContext context=ContextRegistry.GetContext();来获取接点值,这里要注意一点。在使用他的时候必须要使配置文件中的<spring>接点起作用,这样就得必须在.NET的配置文件<configSections>节点下注册类Spring.Context.Support.ContextHandler,它让ContextRegistry类可用来初始化应用程序上下文,它实现在FCL的IConfigurationSectionHandler接口

3.XML对象定义可在<objects>节点注册

<section name="objects" type="Spring.Context.Support.DefultSectionHandler,Spring.Core">

4.Spring.net的IOC容器的简单实例----用简单三层来实现

光说这么多没用,我门还是来点实际的,看看下面的这个简单实例:

一.先建立项目随后添加引用Spring.Core程序集。

二.引用System.Configuration----需要用到ConfigurationManager类的方法。

三.配置.NET配置文件----具体配置如下:

<?xml version="1.0" encoding="utf-8" ?>   <configuration>    <configSections>     <sectionGroup name="spring">      <section name="context"          type="Spring.Context.Support.ContextHandler, Spring.Core"/>      <section name="objects"          type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />    </sectionGroup>   </configSections>    <spring>     <context>      <resource uri="config://spring/objects"/>     </context>     <objects>      <!--这的配置根据实际的程序来的,UsersCompontents是程序集Spring.Demo.Compontext下的一个类-->      <object name="Users"          type="Spring.Demo.Compontext.UsersCompontents,Spring.Demo.Compontent">      </object>     </objects>    </spring>   </configuration>

Spring.net(二)----初探IOC容器(2)

时间:2011-02-09 博客园 Beniao

四.建立好项目的实体类和接口以及实现借口。

下面是实例程序的结构图:Model(实体层),Service(接口),Compontent(实现接口的业务逻辑),SimpleTest(测试

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号