IOC概念
(Inversion Of Control)即控制反转。IoC是一个概念,是一种思想,其实现方式多种多样。当前比较流行的实现方式之一是DI。
DI概念
(Dependency Injection)即依赖注入。组件之间的依赖关系由容器运行期间决定,形象的说,即容器动态的将某个依赖关系动态注入到组件中。
IOC是一个概念,是一种思想,其实现方式多种多样。当前比较流行的实现方式之一是DI。
基于XML的DI
ApplicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
XML文件结构
<beans beans是xml文件的根节点
xmlns=http://www.springframework.org/schema/beans" //xmlns=xmlNameSpace类似于java中的package
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance"// xsi是指xml文件遵守xml规范,xsi全名:xml schema instance
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> //是指具体用到的schema资源
构造函数注入
<bean id="person"class="com.msb.Person">
<constructor-arg name="age"value="18"></constructor-arg>
<constructor-arg name="name"value="zhangsan"></constructor-arg>
</bean>
属性注入
<beanid="person" class="com.msb.Person">
<property name="age" value="19"></property>
<propertyname="name" value="zhangsan"></property>
</bean>