体会IoC:Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
步骤如下:
1.建立web功能
2.导入jar包
3.配置applicationContext.xml
4.创建类
5.测试
具体代码如下
UserDao.java
1 package cn.itcast.ioc; 2 3 public interface UserDao { 4 5 public void save(); 6 }
UserDaoImpl.java
package cn.itcast.ioc; public class UserDaoImpl implements UserDao{ public void save(){ System.out.println("spring:hello user dao"); } }
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Spring的约束配置 --> <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-2.0.xsd "> <!-- 将指定对象配置给Spring,让spring创建其实例 --> <!-- 在spring容器中创建一个id为userDao的bean实例 --> <bean id="userDao" class="cn.itcast.ioc.UserDaoImpl"></bean> </beans>
TestIoC.java
package cn.itcast.ioc; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class TestIoC{ @SuppressWarnings("resource") @Test public void testDemo1(){ //1.定义配置文件路径(此处代表在类路径中) String xmlPath = "applicationContext.xml"; //2.初始化Spring容器,加载配置文件 ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath); //3.通过容器获取useDao实例 UserDao userDao = (UserDao)applicationContext.getBean("userDao"); //4.调用userDao的save()方法 userDao.save(); } }
时间: 2025-01-02 09:18:09