IOC是什么
- IOC: Inversion of Control(控制反转),是指对象的创建权转交给Spring ,Spring代为管理。
Spring框架下载
Spring 官方网站
将Spring开发包解压后
- docs :Spring 的开发规范和API
- libs :Spring的开发的jar和源码
- schema:Spring的配置文件的约束
创建项目 并引入jar包
Spring 运行的体系
将libs中的以下四个jar导入
再引入依赖库中的日志记录依赖
前者jar位于依赖的org.apache.commons中的com.springsource.org.apache.commons.logging中
后者的jar位于依赖的org.apache.log4j中
ioc底层原理
将实现类都交给Spring管理
先新建接口和实现类
找到:spring的解压路径下spring-framework-4.2.4.RELEASE\docs\spring-framework-reference\html\xsd-configuration.html
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
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">
<!-- Spring的入门的配置==================== -->
<bean name="userDAO" class="com.ztl.spring.UserDAOImpl" >
</bean>
</beans>
编写测试类
那么使用Spring 我们可以只改变配置文件就可以让底层代码变化
DI
DI 依赖注入:前提必须有ioc环境,我们需要把对象托管给Spring,而它在管理这个类时,将类的依赖的属性注入进去。
比如:
public class UserDAOImpl implements UserDAO {
private String name;
public void setName(String name) {//注入点
this.name = name;
}
@Override
public void save() {
System.out.println("UserDAOImpl执行了..."+name);
}
}
我们需要在配置文件中再加入property
<property name="" value="">