一,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 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_53764407/article/details/126811203