Spring:IOC

来自Wikioe
Eijux讨论 | 贡献2020年10月28日 (三) 12:36的版本
跳到导航 跳到搜索


关于IOC

IOC:Inversion of Control 控制反转,指的是对象的创建权反转(交给)给Spring,作用是实现了程序的解耦合。

IOC 的底层实现原理.jpg


下载:


Spring 目录结构:

  • docs:API 和开发规范
  • libs:jar 包和源码
  • schema:约束


相关jar:

IOC相关jar包.jpg
即“core container”的四个部分;
SpringFramework Runtime.jpg

使用示例

  1. 创建web 项目
  2. 引入Spring 的开发包
  3. 相关配置文件:
    1. log4j.properties:日志配置
    2. applicationContext.xml:Spring配置文件:
      • (配置说明,位于包的doc中:“spring-framework-4.2.4.RELEASE\docs\spring-framework-reference\html\xsd-configuration.html”)
      <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">
      </beans>
      
  4. 编写相关的类:
    public interface UserDao {
       public void sayHello();
    }
    public class UserDaoImpl implements UserDao {
       @Override
       public void sayHello() {
          System.out.println("Hello Spring...");
       }
    }
    
  5. 完成配置:
    <!-- Spring 的入门案例 -->
    <bean id="userDao" class="cn.itcast.spring.demo1.UserDaoImpl"></bean>
    
  6. 编写测试程序:
    @Test
    // Spring 的方式:
    public void demo2(){
       // 创建Spring 的工厂类:
       ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
       // 通过工厂解析XML 获取Bean 的实例.
       UserDao userDao = (UserDao) applicationContext.getBean("userDao");
       userDao.sayHello();
    }
    


Bean的管理:XML

Bean的管理:注解

Bean的属性注入(DI)