开源框架Spring详解IoC的深刻理解.docx

开源框架Spring详解IoC的深刻理解.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

有一段时间没有接触spring了,感觉有点陌生了,今天总结了一下关于IoC的一些知识点,虽然是学过spring了,但是如果不经常使用,知识点是连接不起来的。所以今天我特意做了这个总结。相信对大家有一定的帮助。以便我们可以共同学习,共同进步。

Ioc的理解

1、依赖注入的概念

spring的两个核心概念:一个是控制反转IoC,也可以叫做依赖注入DI。还有一个是面向切面编程AOP。

控制反转:当某个java对象需要(依赖)另一个java对象时,不是自身直接创建依赖对象,而是由实现IoC的容器(如spring框架的IoC容器)来创建,并将它注入需要这个依赖对象的java对象中。

2、spring的依赖注入

、构造器注入

beanid=accoutDaoImplclass=cn.csdn.dao.AccoutDaoImpl

scope=”singleton”/

beanid=accoutServicImpl

class=cn.csdn.service.AccoutServicImplscope=”

!--构造器注入方式--

constructor-argref=accoutDaoImpl/

/bean

、设值(set方法)注入

beanid=accountDaoImplclass=cn.csdn.dao.AccoutDaoImpl/

beanid=accoutServicImplclass=cn.csdn.service.AccoutServicImpl

!--设值(set方法)注入--

propertyname=accountDaoImplref=accoutDaoImpl/

/bean

3、spring的容器

spring管理的基本单元是Bean,在spring的应用中,所以的组件都是一个个的Bean,它可以是任何的java对象。spring负责创建这些Bean的实例。并管理生命周期。而spring框架是通过其内置的容器来完成Bean的管理的,Bean在spring的容器中生存着,使用时只需要通过它提供的一些方法从其中获取即可

spring的容器有两个接口:BeanFactory和ApplicationContext这两个接口的实例被陈为spring的上下文。

ApplicationContextac=newClassFathXmlApplicationContext(app*.xml);

AccountServiceaccountService=(AccountService)ac.getBean(accountServiceImpl);

4、使用xml装配Bean

4.1、装配Bean

id:指定该Bean的唯一标识。class:指定该Bean的全限定名。

name:为该Bean指定一到多个别名。多个别名可以用“,”和“;”分割。

autowire:指定该Bean的属性的装配方式。scope:指定该Bean的存在。

init-method:指定该Bean的初始化方法。destroy-method:指定该Bean的销毁方法。

abstract:指定该Bean是否为抽象的。如果是抽象的,则spring不为它创建实例。

parent:指定该Bean的父类标志或别名。4.2、装配Bean的各种类型属性值

1.简单类型属性值的装配

beanid=bean1class=cn.csdn.domain.Bean1

propertyname=namevalue=z_xiaofei168/

propertyname=age

value22/value

/property

/bean

2.引用其他Bean的装配

beanid=bean1class=cn.csdn.domain.Bean1

...

/bean

beanid=bean2class=cn.csdn.domain.Bean2

!--引用自其他Bean的装配--

propertyname=bean1ref=bean1/

/bean

另外一种不常使用的配置方式是在property元素中嵌入一个bean元素来指定所引用的Bean.

beanid=bean1class=cn.csdn.domain.Bean1

...

/bean

beanid=bean2class=cn.csdn.domain.Bean2

!--引用自其他Bean的装配--

propertyname=bean1

beanid=bean1class=cn.csdn.domain.

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档