回顾复习Spring学习(二)

 工作原因很久没有用过这些关于JavaEE的东西,写这些博客是回顾复习同时加深学习,也希望大家同时可以借鉴和学习交流,创建了一个qq群有意的各位可以加一下互相交流学习,后续博客还会陆续更新。

回顾复习Spring学习(二)

IOC和DI

IOC(Inversion of Control):其思想是反转资源获取的方向. 传统的资源查找方式要求组件向容器发起请求查找资源. 作为回应, 容器适时的返回资源. 而应用了 IOC 之后, 则是容器主动地将资源推送给它所管理的组件, 组件所要做的仅是选择一种合适的方式来接受资源. 这种行为也被称为查找的被动形式

DI(Dependency Injection) — IOC 的另一种表述方式:即组件以一些预先定义好的方式(例如: setter 方法)接受来自如容器的资源注入. 相对于 IOC 而言,这种表述更直接

Spring IOC容器中配置bean

在xml中

回顾复习Spring学习(二)

id:Bean 的名称。 在 IOC 容器中必须是唯一的

若 id 没有指定,Spring 自动将权限定性类名作为 Bean 的名字 id 可以指定多个名字,名字之间可用逗号、分号、或空格分隔

 

Spring 提供了两种类型的 IOC 容器实现.

BeanFactory: IOC 容器的基本实现.

ApplicationContext: 提供了更多的高级特性. 是 BeanFactory 的子接口.

BeanFactory 是 Spring 框架的基础设施,面向 Spring 本身;ApplicationContext 面向使用 Spring 框架的开发者,几乎所有的应用场合都直接使用 ApplicationContext 而非底层的 BeanFactory

无论使用何种方式, 配置文件时相同的

获取bean用getBean方法

回顾复习Spring学习(二)

 

依赖注入的方式

Spring 支持 3 种依赖注入的方式

属性注入 就相当于set方法

回顾复习Spring学习(二)

构造器注入 可以用index属性和type来制定类型循序

回顾复习Spring学习(二)

工厂方法注入(基本不用)

 

在 Bean 的配置文件中, 可以通过 <ref> 元素或 ref  属性为 Bean 的属性或构造器参数指定对 Bean 的引用

回顾复习Spring学习(二)

还有对集合属性的操作如list,map,properties这个跟hibernate整合会常用 

回顾复习Spring学习(二)

回顾复习Spring学习(二)

回顾复习Spring学习(二)

回顾复习Spring学习(二)

使用 utility scheme 定义集合 可以使一个list集合被多个bean使用

 

回顾复习Spring学习(二)

回顾复习Spring学习(二)

p 命名空间,可以通过 <bean> 元素属性的方式配置 Bean 的属性,比传统的配置方式更加的简洁

回顾复习Spring学习(二)