当前位置: 首页 > news >正文

开锁都在什么网站做企业网站推广建议

开锁都在什么网站做,企业网站推广建议,什么是软文营销,和魔鬼做交易的网站什么是IOC容器 IOC不是一种技术,只是一种思想,一个重要的面向对象编程的法则,它能指导我们如何设计出松耦合,更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于…

什么是IOC容器

        IOC不是一种技术,只是一种思想,一个重要的面向对象编程的法则,它能指导我们如何设计出松耦合,更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于测试;有了IOC容器后,把创建和查找依赖对象的控制权交给了容器,由容器进行注入组合对象,所以对象与对象之间是松散耦合,这样也方便测试,利于功能复用,更重要的使程序的整个体系结构变得非常灵活。在运行期,在外部容器动态的将依赖对象注入组件,当外部容器启动后,外部容器就会初始化。创建并管理bean对象,以及销毁他,这种应用本身不负责依赖对象的创建和维护,依赖对象的创建和维护是由外部容器负责的称为控制反转

IOC(控制反转)和 DI(依赖注入)

IOC(Inversion of Control,控制反转)。这是spring的核心,贯穿始终。所谓IOC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。

DI(依赖注入)。IOC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的
 

IOC容器的概念

        IOC容器就是具有依赖注入功能的容器,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装。在Spring中BeanFactory是IOC容器的实际代表者。

        Spring IOC容器如何知道哪些是它管理的对象呢?这就需要配置文件,Spring IOC容器通过读取配置文件中的配置元数据,通过元数据对应用中的各个对象进行实例化及装配。一般使用基于xml配置文件进行配置元数据,而且Spring与配置文件完全解耦的,可以使用其他任何可能的方式进行配置元数据,比如注解、基于java文件的、基于属性文件的配置都可以。
那Spring IOC容器管理的对象叫什么呢?

Bean的概念

        由IOC容器管理的那些组成你应用程序的对象我们就叫它Bean, Bean就是由Spring容器初始化、装配及管理的对象,除此之外,bean就与应用程序中的其他对象没有什么区别了。那IOC怎样确定如何实例化Bean、管理Bean之间的依赖关系以及管理Bean呢?这就需要配置元数据,在Spring中由BeanDefinition代表,后边会详细介绍,配置元数据指定如何实例化Bean、如何组装Bean等。概念知道的差不多了,让我们来做个简单的例子。

详解IOC容器

        在Spring IOC容器的代表就是org.springframework.beans包中的BeanFactory接口,BeanFactory接口提供了IOC容器最基本功能;而org.springframework.context包下的ApplicationContext接口扩展了BeanFactory,还提供了与Spring AOP集成、国际化处理、事件传播及提供不同层次的context实现 (如针对web应用的WebApplicationContext)。简单说, BeanFactory提供了IOC容器最基本功能,而 ApplicationContext 则增加了更多支持企业级功能支持。ApplicationContext完全继承BeanFactory,因而BeanFactory所具有的语义也适用于ApplicationContext。

ApplicationContext接口获取Bean方法简介

  • Object getBean(String name) 根据名称返回一个Bean,客户端需要自己进行类型转换;
  • T getBean(String name, Class<T> requiredType) 根据名称和指定的类型返回一个Bean,客户端无需自己进行类型转换,如果类型转换失败,容器抛出异常;
  • T getBean(Class<T> requiredType) 根据指定的类型返回一个Bean,客户端无需自己进行类型转换,如果没有或有多于一个Bean存在容器将抛出异常;
  • Map<String, T> getBeansOfType(Class<T> type) 根据指定的类型返回一个键值为名字和值为Bean对象的Map,如果没有Bean对象存在则返回空的Map。

IOC容器工作流程

让我们来看下IOC容器到底是如何工作。在此我们以xml配置方式来分析一下:
1)准备配置文件:就像前边Hello World配置文件一样,在配置文件中声明Bean定义也就是为Bean配置元数据。
2)由IOC容器进行解析元数据: IOC容器的Bean Reader读取并解析配置文件,根据定义生成BeanDefinition配置元数据对象,IOC容器根据BeanDefinition进行实例化、配置及组装Bean。
3)实例化IOC容器:由客户端实例化容器,获取需要的Bean。

整个过程是不是很简单,执行过程如下,其实IOC容器很容易使用,主要是如何进行Bean定义。下一章我们详细介绍定义Bean。

小结

除了测试程序的代码外,也就是程序入口,所有代码都没有出现Spring任何组件,而且所有我们写的代码没有实现框架拥有的接口,因而能非常容易的替换掉Spring,是不是非入侵。
客户端代码完全面向接口编程,无需知道实现类,可以通过修改配置文件来更换接口实现,客户端代码不需要任何修改。是不是低耦合。
如果在开发初期没有真正的实现,我们可以模拟一个实现来测试,不耦合代码,是不是很方便测试。
Bean之间几乎没有依赖关系,是不是很容易重用。

 

 知识来源:

【基础】如何实现一个IOC容器_哔哩哔哩_bilibili

什么是IOC容器_renxingzhadan的博客-CSDN博客

http://www.yidumall.com/news/79219.html

相关文章:

  • 发布网页优化seo厂家
  • 筹备网站建设企业网站推广
  • 创建网站的英语电商网
  • 17做网站郑州深圳互联网公司排行榜
  • 深圳平台型网站建设公司营销型网站策划书
  • dedecms 英文网站宁海关键词优化怎么优化
  • python一般要学多久sem优化托管
  • java实现大型门户网站开发经验seo外包
  • 中国的门户网站有哪些广东seo网站设计
  • 自己怎么做优惠搜网站seo顾问阿亮
  • 做网站的中文名字网络销售怎么做才能有业务
  • 汕头网站制作后缀百度关键词seo推广
  • 兰州做门户网站国内高清视频素材网站推荐
  • 温州网站建设前十公司领硕网站seo优化
  • 做仿牌网站空间市场seo是什么意思
  • 做网站怎么做的旅游最新资讯
  • wordpress 分类目录 插件优化大师官网
  • 郴州网东莞百度推广优化公司
  • 室内装修效果图网站有哪些seo修改器
  • 项目网站建设世界杯排名
  • 重庆购务网站建设seo项目经理
  • 百度seo整站优化公司广告联盟全自动赚钱系统
  • 海南做网站的网站关键词百度自然排名优化
  • 自己做盗版小说网站吗网站信息查询
  • 手机网站设计公司哪家好网站seo完整seo优化方案
  • 王建设的网站百度搜一搜
  • 建网站平台哪家好网域名解析ip查询
  • 什么网站可以做数据调查网站推广服务
  • 河南平台网站建设价位网站建设公司企业网站
  • 开封网站建设流程网站建设的意义和作用