一,IOC的概念
IOC(控制反转):
从用户角度来看,生成一个新对象我们一般用new来实现,这是用户的操作,而IOC(控制反转),即把生成对象交给spring容器来管理,我们要使用的时候由spring容器给我们提供。
对于spring容器的角度来看,spring容器负责将被依赖的对象注入到调用者的成员变量,这就是依赖注入(DI),是IOC从不同角度的理解。
二,创建一个Spring的入门程序
1.引入文件到项目(添加依赖文件)
使用spring框架需要引入四个基础jar包到项目中,即spring-beans-xxx.jar,spring-core-xxx.jar,spring-context-xxx.jar,spring-expression-xxx.jar,这四个包分别对应spring核心容器的四个模块。此外,spring框架依赖于Apache Commons Logging组件,所以还需引入commons-logging-xxx.jar。(xxx为jar包的版本号)
2.代码
//持久层接口
package Dao;
public interface TestDao {
public void sayhello();
}
//持久层接口实现类
package Dao;
public class TestDaoImpl implements TestDao{
@Override
public void sayhello() {
System.out.println("hello study hard");
}
}
package Test;
import Dao.TestDao;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
public static void main(String[] args) {
@SuppressWarnings("resource")
//读取spring的配置文件
ClassPathXmlApplicationContext cpxAppCon = new ClassPathXmlApplicationContext("applicationContext.xml");
//从容器中获得一个Bean的实例,IOC的体现。
//注意,如果未在配置文件中配置Bean或者未使用注解声明Bean,这里是从容器中取不到对象的。
TestDao test = (TestDao) cpxAppCon.getBean("test");
test.sayhello();
}
}
3.spring的配置文件
<?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">
<!-- 将指定类TestDaoImpl配置给Spring,让Spring创建其实例,
注意,配置bean用的是TestDaoImpl的全路径。-->
<bean id="test" class="Dao.TestDaoImpl" />
</beans>
4.目录结构
如下图所示:
5.运行结果
如下图所示:
版权声明:本文为qq_53764407原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。