Unity不用太多介绍,园子里很多Unity入门的文章。我一直以来也没有时间研究,直到昨天看了深入 Unity 1.x 依赖注入容器之一:入门才见识到Unity的真面目。初一看某些地方感觉和Google的Guice很相似,Guice提供利用Annotation来进行注入,而Unity则提供[Dependency]的Property,两者有异曲同工之效。Unity还有更多的创新,比如InjectionMethod,在很多场合它也能被用到。

但是看后又觉得[Dependency]注入的方式太具有侵入性了,如果我现在有大量的代码,想加上IOC。那么就不得不在每个注入点加上[Dependency]和Using... 这是很危险的。我们引入Unity帮助创建对象,但它却分散到代码中的各个地方,难以被改变,其违背了“高内聚,低耦合”的原则。

既然Unity允许使用配置文件进行初始化,我就想它应该也支持配置文件指定属性注入。翻查了官方文档后,发现Unity的确支持。不多说,放出一个Log的小例子,各位看了就会明白。

接口及类:

Main函数

配置文件

很简单,不是吗?

转载于:https://www.cnblogs.com/blusehuang/archive/2008/05/23/1205368.html

Unity的属性注入相关推荐

  1. unity的依赖注入

    参考文档 http://www.cnblogs.com/zhangchenliang/archive/2013/01/08/2850970.html http://www.tuicool.com/ar ...

  2. MVC3 中使用Unity实现依赖注入

    前言:前段时间一直在研究依赖注入,不过不是在MVC框架中使用,今天突然想到在MVC中使用Unity实现依赖注入,一时慌了,不知道从何下手,接着就是网上不停的找资料,下面我把我找到的资料分享下,也把我的 ...

  3. core控制器属性注入的用处_.NET Core原生DI扩展之属性注入实现

    在上一篇博客里,我们为.NET Core原生DI扩展了基于名称的注入功能.而今天,我们要来聊一聊属性注入.关于属性注入,历来争议不断,支持派认为,构造函数注入会让构造函数变得冗余,其立意点主要在代码的 ...

  4. Spring学习笔记(二)——Spring相关配置属性注入Junit整合

    一.Spring的相关配置 1.1 Bean元素 class属性:被管理对象的完整类名 name属性:给Bean起个名字,能重复,能使用特殊字符.后来属性 id属性:给Bean起个名字,不能重复,不能 ...

  5. 005_Spring的属性注入

    1. DI依赖注入, 前提必须有IOC的环境, Spring管理这个类的时候将类的依赖的属性注入(设置)进来. 2. Spring的属性注入 2.1. 构造方法的方式的属性注入 2.2. Set方法的 ...

  6. Spring Boot系列四 Spring @Value 属性注入使用总结一

    @Value注入 不通过配置文件的注入属性的情况 通过@Value将外部的值动态注入到Bean中,使用的情况有: 注入普通字符串 注入操作系统属性 注入表达式结果 注入其他Bean属性:注入beanI ...

  7. 2.3.3 spring属性注入-注解注入-全注解-配置类扫描

    代码: spring2-属性注入-全注解-配置类扫描.zip - 蓝奏云文件大小:12.3 K|https://www.lanzouw.com/iPK5vvq21uf 这个博客,我们使用全注解的方式来 ...

  8. 2.3.2 spring属性注入-注解注入-半注解注入-后序

    代码: spring属性注入-注解注入-半注解后序.zip - 蓝奏云文件大小:15.2 K|https://www.lanzouw.com/iCjbVvpvxaf 上一个博客的半注解是,一个类在xm ...

  9. 2.3.1 spring属性注入-注解注入-半注解方式-前序

    注解注入自由度高,可以对部分类使用注解,也可以对所有类都使用注解. 下面代码是的Category使用xml定义java Bean, Product使用注解来定义java Bean 1.定义Catogo ...

  10. 2.2 Spring属性注入-构造方法

    代码: spring2.2-构造方法注入.zip - 蓝奏云文件大小:14.9 K|https://www.lanzouw.com/iLbBBvpug4b 1.定义Category和Product类, ...

最新文章

  1. 旷视张祥雨:神经网络架构设计新思路
  2. 26个Jquery使用小技巧
  3. 使用nginx动静分离后,druid被拦截的解决方法
  4. centos安装java的jdk
  5. 应届硕士研究生算法岗秋招总结
  6. JavaScript实现binarySearch二分查找算法(附完整源码)
  7. yarn timeline1,timeline2官网解释
  8. mongodb之配置
  9. java中mvc事务_Spring MVC 事务配置
  10. SAP License:雾里看花系列——德国!SAP!中国企业!高管! SAP权限管控
  11. 几时几分几秒怎么写_头总是一阵一阵眩晕是怎么回事?眩晕症该如何治疗?
  12. OpenCV人工智能图像处理学习笔记2 opencv初识图片保存像素理解
  13. 为Python IDLE 添加清屏(Ctrl + L )快捷工具(附带解决错误的方法)
  14. 【PMP】工作分解结构WBS详解
  15. 国内比较有名的maven镜像
  16. 微软笔试题《Arithmetic Puzzles》- 题解
  17. html5游戏修改,Duang! Html5游戏调试神器全新出炉!- Cocos DevTools
  18. 2019年Q1美国手游市场总收入24.3亿美元,中国手游贡献2.8亿美元
  19. 虚拟化系统(XenServer,ESXi)-XenServer
  20. 注销Apple ID账号

热门文章

  1. 征稿延期 | 2019亚洲语言处理国际大会(IALP2019)征稿延期
  2. 超大背包问题(折半枚举, 双向搜索)
  3. 机器学习基础算法15-回归实例-线性回归、Ridge回归、LASSO、ElasticNet的高阶参数与过拟合以及TSS>=ESS+RSS代码验证
  4. python基础2-数据及字符串知识学习
  5. 《流畅的Python第二版》读书笔记——字典和集合
  6. 让《强化学习(第2版)》架起一座通往强化学习经典知识宝库的桥梁
  7. TensorFlow游乐场及神经网络简介
  8. 奔跑吧,骏马!——跑步类动画设计动态分析
  9. 抽丝剥茧,在实践中深入学习QTP
  10. Oracle J.D.Edwards技术与应用