设为首页 加入收藏

TOP

学习Spring.Net:1.简单的应用之控制台(一)
2019-09-02 23:55:51 】 浏览:26
Tags:学习 Spring.Net:1. 简单 应用 控制台

1.开始。

 

2.新建一个控制台,我们新建一个SpringNetTest类。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SpringNetDemo
{
   public class SpringNetTest
    {
        public void SayHello()
        {
            Console.WriteLine("SayHello");
        }
    }
}

2.首先我们用正常的方式在mian函数入口实例化这个SpringNetTest对象

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SpringNetDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            SpringNetTest springNet = new SpringNetTest();
            springNet.SayHello();
            Console.ReadKey();
        }
    }
}

4.很明显这个地方是直接New的,进行了强耦合,在实际的项目中这样写,未来需求变动是不利于修改的。面向对象思想中,我们要面向接口编程。接下来我提取一个接口,SpringNetTest继承这个接口。写一个简化版本的例子

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SpringNetDemo
{
    interface IObjectNetTest
    {
        void SayHello();
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SpringNetDemo
{
   public class SpringNetTest: IObjectNetTest
    {
        public void SayHello()
        {
            Console.WriteLine("SayHello");
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SpringNetDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            IObjectNetTest springNet = new SpringNetTest();
            springNet.SayHello();
            Console.ReadKey();
        }
    }
}

这样的话,我们程序只要是依赖于IObjectNetTest而不依赖 SpringNetTest了,以后如果 不用SpringNetTest,但是只要是继承于IObjectNetTest对象都可以改。但是这个地方还是要修改 new SpringNetTest(),我们这个地方还是强耦合。那这个时候我们SpringNet就闪亮登场了。

5.首先我们下载好了SpringNet的程序集,这是全部的 控制台我们只要前面4个基础的就好了

6.修改配置文件AppConfig,和main方法代码,注入的方式好多种,我下面只列举了一种,具体的可以看文档

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  
  <!--Spring-->
  <configSections>
    <!--spring容器对象的创建-->
    <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>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  

  <spring>
    <!-- Spring.Net对象容器的配置 -->
    <context>
      <!--要注入容器的对象的创建路径-->
      <resource uri ="config://spring/objects" />
      <!--<resource uri="file://~Config/common.xml" />-->
    </context>
    <objects  xmlns= "http://www.springframework.net" >
      <!--创建的对象-->
      <!--name:是定义启的名字,type:逗号前面是创建对象的命名空间,逗号后面是创建对象所在的程序集-->
      <object  name = "IobjectNetTest" type="SpringNetDemo.SpringNetTest,SpringNetDemo">
      </object>
    </objects>
  </spring>
  <!--Spring-->
</configuration>
using Spring.Context;
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇1.C#知识点:值类型和引用类型 下一篇多线程编程学习笔记——async和aw..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目