Spring.NET教程(二)——环境搭建(基础篇)

一、环境下载及安装  

  到Spring的官方网站下载Spring.NET框架的安装文件(Spring.NET-1.3.0-RC1.exe)。目前Spring.NET最新的版本是1.3。下载并解压后就可以了。

  我们使用Spring.NET框架经常用到的一下几个文件:

  Common.Logging.dll(必要)

  Spring.Core.dll(必要)

  Spring.Data.dll

  Spring.Aop.dll(可选)

  Spring.Data.NHibernate21.dll

  Spring.Web.dll

  在以后的博客里我们会学习一些与NHibernate和Asp.NET MVC结合的例子,可以到Hibernate的官方网站和Asp.NET的官方网站下载各自的框架安装文件。

  在基于XML的工厂中,这些对象定义表现为一个或多个<object>子节点,它们的父节点必须是<objects>(按:objects节点的xmlns元素是必需的,必须根据不同的应用添加不同的命名空间,以便有IDE的智能提示(见Spring.NET中文手册)。

  Object.XML

<objects xmlns="http://www.springframework.net" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.net
        http://www.springframework.net/xsd/spring-objects.xsd">
  <object id="" type="">
  
  </object>
  <object id="." type="">
  
  </object>
  
</objects>

  同样也可以找到Spring.NET解压目录下的Spring.NET-1.3.0-RC1\doc\schema,把里面的几个.xsd复制到VS2008安装目录下的Microsoft Visual Studio 9.0\Xml\Schemas文件夹。

 

必要的时候可以安装建立Spring.NET程序的模板Spring.NET-1.3.0-RC1\dev-support\vs.net-2008\install-templates.bat

  二、建立一个Spring.NET应用程序

  我们新建一个Objects.xml的文件,然后从Spring.NET手册中复制来一段配置模板

  Objects.xml

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.net
        http://www.springframework.net/xsd/spring-objects.xsd">
  
  <object id="PersonDao" type="FirstSpringNetApp.PersonDao, FirstSpringNetApp">
  </object>
  
</objects>

  目前我找到了实例化Spring.NET容量的两种方式:

  1.实际物理路径

         IResource input = new FileSystemResource(@"D:\Objects.xml");  //实际物理路径
            IObjectFactory factory = new XmlObjectFactory(input);

  2.程序集下寻找配置文件

            string[] xmlFiles = new string[] 
            {
                "file://Objects.xml"
            };
            IApplicationContext context = new XmlApplicationContext(xmlFiles);
            IObjectFactory factory = (IObjectFactory)context;
            Console.ReadLine();

目前我一般采用后者(程序集下寻找配置文件),这样维护起来比较方便。

  这种方式需满足URI语法。

  file://文件名

  assembly://程序集名/命名空名/文件名

  然而更好的方式是在配置文件App.config或Web.config添加自定义配置节点

  在配置文件中要引入<objects xmlns="http://www.springframework.net"/>命名空间,否则程序将会无法实例化Spring.NET容器。

  App.config

<?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="assembly://FirstSpringNetApp/FirstSpringNetApp/Objects.xml"/>
      <resource uri="config://spring/objects" />
    </context>
    <objects xmlns="http://www.springframework.net"/> <!--必要-->
  </spring>
</configuration>
 
            IApplicationContext ctx = ContextRegistry.GetContext();
            Console.WriteLine(ctx.GetObject("PersonDao").ToString());

 

  好了,Spring.NET的环境配置就先讲到这里。

 

posted @ 2009-12-30 12:36  catch22  阅读(4733)  评论(0编辑  收藏  举报