Spring.Net的快速应用

前奏:

spring.net(从java里面的spring移植过来的)  而Unity(.net自带的实现Ioc和DI功能的开源项目)

主要功能:{
IoC: Inversion of Control
控制翻转:就是创建对象的权利由开发人员自己控制New,转到由容器来控制。第三方容器创建对象,我们只需要调用容器。(类比抽象工厂)

DI:Dependency Injection
依赖注入:通过容器创建对象的时候,在对象初始化是可以给一些属性,构造方法的参数等注入默认值。初始值

Aop:面向切面编程,相当于MVC里面的过滤器

}

参考:spring.net的帮助文档中有Ioc快速入门。

开始实现Ioc和DI:  Spring.net提供的容器是IApplicationContext

  第一步:引用DLL
  Spring.Core.dll(主要)  还有就是如果要实现Aop,再引用Aop的dll。spring.net 中用到了日志是 Common.Logging.dll也需要引用一下。

  第二步:写配置文件,指定要new的命名空间和程序集

      (1)配置文件中初始化容器IApplicationContext   //创建容器的方法有很多种

        <configuration>

          <configSections>

             <sectionGroup name="spring">

                <section name="context" type="Spring.Context.Support.ContextHandler , Spring.core"></section>

                <section name="objects"    //说的就是下面名字是objects的字节。 type="Spring.Context.Support.DefaultSectionHandler , Spring.core"></section>

             </sectionGroup>

          </configSections>

          <spring>

            <context>

              <resource uri="" />

            </context>

            <objects xmlns="http://www.springframework.net">    //既然加s了,说明里面可以有多个。看你要对那个类创建实例了。  

              <object name=""  type="命名空间.类名+,+程序集名 "></object>   //name所指定的就是id.代码中通过id从IApplicationContext中请求所定义的对象。

              <description></description>

            </objects>

          </spring>

        </configuration>

      (2)获取对象

        方法{

            IApplicationContext ctx=contextRegistry.GetContext(); //读取配置文件创建出容器

            类名或接口  na=(强转类名或接口) ctx.Getobject("配置文件中object的name");  //拿字节。对类new出对象,因为这个配置中指定的类可能继承了接口。

          }

//好处:比如说以后我们换成了另外一个业务,只要改配置文件就行了。

      (3)DI的实现:

        把配置文件中<object>节点看成一个类里面可以加属性节点

          <property name=""  value="" />  这里的name就是类中具体的属性。value是值

        但是如果这个属性类型是另一个自己声明的类(这个类中还有自己的属性),就不能用value直接赋值了。

        所以就再声明一个<object name="objectName"> property属性赋值 </object>配置的是自己定义类的类型。然后

          <property name="属性名"  ref="objectName" />让它关联定义的object

总结:就是当属性的类型是一个复杂类型的时候不能直接赋值,而是ref到另一个object,为另一个object的属性赋值。

      

    

 

时间: 2024-11-08 22:31:16

Spring.Net的快速应用的相关文章

Springboot(一):使用Intellij中的Spring Initializr来快速构建Spring Boot工程

使用Intellij中的Spring Initializr来快速构建Spring Boot工程 New---Project 可以看到图所示的创建功能窗口.其中Initial Service Url指向的地址就是Spring官方提供的Spring Initializr工具地址,所以这里创建的工程实际上也是基于它的Web工具来实现的,也可以将此地址copy到浏览器上试一下,会生成spring boot的项目工程下载 Next,下图可以看到可以编辑我们所创建的工程信息,type类型,language语

深入Spring Boot:快速集成Dubbo + Hystrix

背景Hystrix 旨在通过控制那些访问远程系统.服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力.Hystrix具备拥有回退机制和断路器功能的线程和信号隔离,请求缓存和请求打包,以及监控和配置等功能.Dubbo是Alibaba开源的,目前国内最流行的java rpc框架.本文介绍在spring应用里,怎么把Dubbo和Hystrix结合起来使用.Spring Boot应用生成dubbo集成spring boot的应用配置spring-cloud-starter-netflix-hys

Spring REST Template 快速入门

Spring REST Template 快速入门 本篇将使用Spring Boot发布REST Service,使用Spring REST Template来调用服务 本篇代码均已上传到GITHUB,<https://github.com/IloveZiHan/restfultemplate.git> 介绍 我们之前都使用过HttpClient来发送HTTP请求,但我们很多时间都需要将HttpClient请求或者响应的数据转换为Java对象,HttpClient需要我们自己手动来解析.我们今

Spring Boot框架——快速入门

Spring Boot是Spring 全家桶非常重要的一个模块,通过 Spring Boot 可以快速搭建一个基于 Spring 的 Java 应用程序,Spring Boot 对常用的第三方库提供了配置方案,可以很好地和 Spring 进行整合,MyBatis.Spring Data JPA 等,可以一键式搭建功能完备的 Java 企业级应用. Spring Boot 的优势 - 不需要任何 XML 配置文件. - 内嵌 Web 服务器,可以直接启动. - 默认支持 JSON 数据,不需要做额

笔记:Spring Cloud Zuul 快速入门

Spring Cloud Zuul 实现了路由规则与实例的维护问题,通过 Spring Cloud Eureka 进行整合,将自身注册为 Eureka 服务治理下的应用,同时从 Eureka 中获取了所有其他微服务的实例信息,这样的设计非常巧妙的将服务治理体系中维护的实例信息利用起来,使得维护服务实例的工作交给了服务治理框架自动完成,而对路由规则的维护,默认会将通过以服务名作为 ContextPath 的方式来创建路由映射,也可以做一些特别的配置,对于签名校验.登录校验等在微服务架构中的冗余问题

[转]Spring MVC 教程,快速入门,深入分析

.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 六.springMVC-mvc.xml 配置文件片段讲解 七.spring mvc 如何访问到静态的文件,如jpg,js,css 八.spring mvc 请求如何映射到具体的Action中的方法 九. spring mvc 中的拦截器:十. spring mvc 如何使用拦截器 十一. spring mv

Spring MVC 教程,快速入门,深入分析

资源下载: Spring_MVC_教程_快速入门_深入分析V1.1.pdf SpringMVC核心配置文件示例.rar 作者:赵磊 博客:http://elf8848.iteye.com 目录  一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 六.springMVC-mvc.xml 配置文件片段讲解 七.spring mvc 如何访问到静态的文件,如j

(Spring Boot框架)快速入门

Spring Boot 系列文章推荐 Spring Boot 入门 Spring Boot 属性配置和使用 Spring Boot 集成MyBatis Spring Boot 静态资源处理 今天介绍一下如何利用Spring MVC快速的搭建一个简单的web应用. 环境准备 一个称手的文本编辑器(例如Vim.Emacs.Sublime Text)或者IDE(Eclipse.Idea Intellij) Java环境(JDK 1.7或以上版本) Maven 3.0+(Eclipse和Idea Int

Spring Boot(1)-快速构建应用

http://blog.csdn.net/hguisu/article/details/50956370 Spring Boot 的目的在于快速创建可以独立运行的 Spring 官方文档:http://docs.spring.io/spring-boot/docs/current/reference/html/ Spring Boot提供了一个强大的一键式Spring的集成开发环境,能够单独进行一个Spring应用的开发,其中: (1)集中式配置(application.properties)+