Spring 学习笔记 IOC&DI
一.IOC
IOC—Inversion of Control,即“控制反转”,是一种设计思想。在Java开发中,Ioc意味着对象的产生由容器控制。
DI—Dependency Injection,即“依赖注入”:组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。是实现IOC的方式。
1.DI方式
1.1 set()方法:
<bean id="student" class="com.spring.test.di.model.runningman">
<property name="name" value="haha"></property>
<property name="age" value="35"></property>
<property name="car" ref="car"></property>
</bean>
1.2 构造器方式:
<bean id="student" class="com.spring.test.di.model.runnningman">
<constructor-arg index="0" value="haha"></constructor-arg>
<constructor-arg index="1" value="37"></constructor-arg>
</bean>
1.3 p标签:
<bean id="student" class="com.spring.test.di.model.runningman" p:name="haha" p:age="37">
1.4 other
Scope:singleton默认单例;prototype
懒加载:lazy-init="true"
include-filter:指定需要包含的包
exclude-filter:指定需要排除的包
2.核心组建
IoC容器的两个核心接口BeanFactory和ApplicationContext两个接口表示容器;
从接口BeanFactory到HierarchicalBeanFactory,再到ConfigurableBeanFactory,这是一条主要的BeanFactory设计路径。其定义了基本的Ioc容器规范。在这个接口定义中,包括了getBean()这样的Ioc容器的 基本方法,定义了BeanFactory就是最简单的Ioc容器的基本功能。
以ApplicationContext作为核心的接口设计,这里涉及的主要接口设计有,从BeanFactory到ListableBeanFactory,再到ApplicationContext,再到我们常用的WebApplicationContext或者ConfigurableApplicationContext接口。我们常用的应用基本都是org.framework.context ConfigurableApplicationContext实现。在BeanFactory简单Ioc容器的基础上添加了许多对高级容器的特性支持功能
上一篇: openMP并行编程基础
下一篇: SIMD补充 指令集架构类型 指令集介绍
推荐阅读