关于Container容器以及IoC注入机制的认识
container 容器的概念:
1 container 是一个Java 所编写的程序,用于对象之间之间管理对象关系。
主要的java EE 容器如下:
Java容器类包含List、ArrayList、Vector及map、HashTable、HashMap、Hashset等。
ArrayList和HashMap是异步的,Vector和Hashtable是同步的,所以Vector和Hashtable是线程安全的,
而ArrayList和HashMap并不是线程安全的。因为同步需要花费机器时间,所以Vector和Hashtable的执行效率要低于 ArrayList和HashMap。
主要的接口以及容器如下:
├Hashtable
├TreeMap
└IdentityHashMap
Container 容器的注入:
首先来了解以下Java IoC的注入机制:
IoC 是什么?
1 ) 在面向对象的程序设计当中,它的底层都是由N个对象构成的,各个对象之间通过相互合作,最终实现系统地业务逻辑 。 长此以往,对象之间的耦合度必然会随着时间的推移急速增加,因此为了降低对象之间耦合度过高的问题,提出了借助于“第三方”实现具有依赖
关系的对象之间的解耦。从而降低了系统之间,对象之间的耦合度。使得程序在后期调试和修改方面更加的便捷和方便。
IoC容器拿掉之后,对象之间没有耦合关系。 因此对于系统的开发和调试具有很大的用处。
3.IOC也叫依赖注入(DI)
IOC是控制反转,那么到底是“哪些方面的控制被反转了呢?”,经过详细地分析和论证后,得出了答案:“获得依赖对象的过程被反转了”。控制被反转之后,获得依赖对象的过程由自身管理变为了由IOC容器主动注
入。于是,“控制反转”被取了一个更合适的名字叫做“依赖注入(Dependency Injection)”。所谓依赖注入,就是由IOC容器在运行期间,动态地将某种依赖关系注入到对象之中。
感想:
java 的IoC注入机制相信在以后的发展中将会更加成熟,对象与对象之间的耦合度也将得到显著的降低。同时java 容器的发展也将会得到进一步的开发和进步。
关于Container容器以及IoC注入机制的认识的更多相关文章
- 基于.NET平台的分层架构实战(六)——依赖注入机制及IoC的设计与实现[转]
原文:http://www.cnblogs.com/leoo2sk/archive/2008/06/19/1225223.html 我们设计的分层架构,层与层之间应该是松散耦合的.因为是单向单一调用, ...
- IOC容器的依赖注入
1.依赖注入发生的时间 当Spring IoC容器完成了Bean定义资源的定位.载入和解析注册以后,IoC容器中已经管理类Bean定义的相关数据,但是此时IoC容器还没有对所管理的Bean进行依赖注入 ...
- springboot成神之——ioc容器(依赖注入)
springboot成神之--ioc容器(依赖注入) spring的ioc功能 文件目录结构 lang Chinese English GreetingService MyRepository MyC ...
- ASP.NET中IOC容器Autofac(依赖注入DI 控制反转IOC)
IOC的一个重点是在程序运行中,动态的向某个对象提供它所需要的其他对象.这一点是通过DI来实现的.Autofac则是比较流行的一款IOC容器. IoC和DI有什么关系呢?其实它们是同一个概念的不同角度 ...
- .net core 注入机制与Autofac
本来是要先出注入机制再出 管道 的,哈哈哈……就是不按计划来…… 这里扯扯题外话:为什么要注入(DI,dependency-injection),而不用 new 对象? 可能我们都很清楚,new 对象 ...
- 使用JAVA实现的一个简单IOC注入实例
https://blog.csdn.net/echoshinian100/article/details/77977823 欲登高而望远,勿筑台于流沙 RSS订阅 原 使用JAVA实现的一个简单IOC ...
- 【转载】C#中可使用Unity容器实现属性注入
简介 Unity :Unity是微软团队开发的一个轻量级,可扩展的依赖注入容器,为松散耦合应用程序提供了很好的解决方案,支持构造器注入,属性注入,方法注入. 控制反转:(Inversion of Co ...
- Spring Ioc工作机制 初步
Spring IoC工作原理 Spring 启动时读取应用程序提供的Bean配置信息,并在Spring容器中生成一份相应的Bean配置注册表,然后根据这张注册表实例化Bean,装配好Bean之间的依赖 ...
- Spring第四天,BeanPostProcessor源码分析,彻底搞懂IOC注入及注解优先级问题!
随机推荐
- 《MySQL实战45讲》(8-15)笔记
MySQL实战45讲 目录 MySQL实战45讲 第八节: 事务到底是隔离的还是不隔离的? 在MySQL里,有两个"视图"的概念: "快照"在MVCC里是怎么工 ...
- dubbo学习实践(1)之管理控制台Dubbo-admin部署
1.Docker拉取现有镜像,构建Dubbo-admin 拉取镜像,这里使用chenchuxin/dubbo-admin docker pull chenchuxin/dubbo-admin 注册中心 ...
- Kong网关安装之Docker版(1)
前言: Kong 是天生的微服务网关.她的官方简介是:Kong 是一个云原生,高效,可扩展的分布式 API 网关. 自 2015 年在 github 开源后,广泛受到关注,目前已收获 1.9w+ 的 ...
- Linux进程理解与实践(二)僵尸&孤儿进程 和文件共享
孤儿进程与僵尸进程 孤儿进程: 如果父进程先退出,子进程还没退出那么子进程的父进程将变为init进程.(注:任何一个进程都必须有父进程) [cpp] view plaincopy #include & ...
- go配置私有仓库 (go mod配置私有仓库)
windows 配置go私有仓库 一.环境 1.私有gitlab (gitlab.xxx.com) 2.go 1.16.3 3.win10系统, 家目录:C:\Users\Administrator, ...
- 活久见!TCP两次挥手,你见过吗?那四次握手呢?
活久见!TCP两次挥手,你见过吗?那四次握手呢? 文章持续更新,可以微信搜一搜「小白debug」第一时间阅读,回复[教程]获golang免费视频教程.本文已经收录在GitHub https://git ...
- STP相关概念
1)桥ID(Bridge ID)=Bridge Priority+MAC 2) 端口ID(Port ID)=Port Priority+Port No 3)桥根 4)非桥根 5)根端口 6)指定端口 ...
- 【文件格式探究】EP.1 对ePub文件格式的初探
这是"文件格式探究"专题的第 1 期--初探 "ePub" 文件格式.这个专题将会给各位读者呈现笔者探索各种文件格式的过程,具体则是文件的内容是如何呈现出来的. ...
- oracle给system用户增加sysdba和sysoper 角色
第一步:先用sys用户登录到数据库 第二步:打开一个sql窗口,输入grant sysoper to system; 点击执行 第三步:等待执行完成之后,再执行grant sysdba to sys ...
- noip16
<凉宫春日的忧郁>专场 T1 考试的时候连题面都没看懂,都没往图论这方面想,更别提最小生成树. 正解: 最小生成树prim,好像是什么欧几里得生成树,寒假时候的东西了,我直接找的blog看 ...