Spring--2.IOC和DI

本文介绍了Spring框架中IOC容器的基础概念与使用方法,包括容器的实例化过程、配置文件的编写、对象创建的测试步骤,并对比了BeanFactory与ApplicationContext的不同。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1       Spring的ioc操作

1.1  概述

1 把对象的创建交给spring进行管理

 

2 ioc操作两部分:

(1)ioc的配置文件方式

(2)ioc的注解方式

 

 

1.2  IOC 容器

       在 Spring IOC 容器读取 Bean 配置创建 Bean 实例之前, 必须对它进行实例化. 只有在容器实例化后, 才可以从 IOC 容器里获取 Bean实例并使用.

       Spring提供了两种类型的 IOC 容器实现,无论使用何种方式, 配置文件时相同的

BeanFactory: IOC 容器的基本实现.

ApplicationContext: 提供了更多的高级特性. 是 BeanFactory 的子接口.

 

1.3  IOC底层原理

1.3.1      技术

(1)xml配置文件

(2)dom4j解决xml

(3)工厂设计模式

(4)反射

 

1.3.2      画图分析


 

 

1.4  IOC入门案例

 

 

1.4.1      第一步 导入jar包

       解压资料zip文件

Jar特点:都有三个jar包

(2)做spring最基本功能时候,导入四个核心的jar包就可以了

(3)导入支持日志输出的jar包

1.4.2      第二步 创建类,在类里面创建方法

public classUser {
 
   public void add(){
      System.out.println("add...");
   }
  
}

1.4.3      第三步 创建spring配置文件,配置创建类,(或者插件开发)

(1)spring核心配置文件名称和位置不是固定的

- 建议放到src下面,官方建议applicationContext.xml

(2)引入schema约束


(3)配置对象创建

<!-- ioc入门 -->
   <bean id="user" class="spring.ioc.User"></bean>

1.4.4      第四步 写代码测试对象创建(实际项目没用)

       这段代码在测试中使用

@Test
   public void testAdd() {
      //加载核心配置文件
      ApplicationContextctx =
            newClassPathXmlApplicationContext("applicationContext.xml");
      //得到创建的对象 id=user
      Useruser = (User) ctx.getBean("user");
     
      user.add();
     
   }

 

2       注意

2.1  IOC和DI区别

(1)IOC: 控制反转,把对象创建交给spring进行配置

(2)DI: 依赖注入,向类里面的属性中设置值

 

(3)关系:依赖注入不能单独存在,需要在ioc基础之上完成操作

 

2.2  BeanFactory和ApplicationContext的区别?

       BeanFactory是Spring容器顶级核心接口,比较早,但功能比较少,getBean就是BeanFactory定义的。

       ApplicationContext是Spring里面的另外一个容器顶级接口,它继承于BeanFactory,但是提供的功能譬如校验,国际化,监听,对Bean的管理功能比较多,一般使用ApplicationContext。

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值