基本概念 Spring 的 Ioc 容器,通常也称应用上下文.它包含了两个概念 Ioc 和 容器: 容器:顾名思义就是用来装东西的,在 Spring 中容器里盛放的就是各种各样的 Bean.既然装了东西,那么理所应当的要控制东西何时盛放(添加),何时倒掉(移除),这就是所谓的 Bean 管理.因此 Spring 容器的作用是负责 Bean 的创建和管理. Ioc:Inversion of Control,即控制反转,意指控制权的转换.原来创建 Bean 需要开发者利用 new 关键字创建 Bea
1.1 Spring IoC容器 从昨天的例子当中我们已经知道spring IoC容器的作用,它可以容纳我们所开发的各种Bean.并且我们可以从中获取各种发布在Spring IoC容器里的Bean,并通过描述得到它. 1.2 Spring IoC容器的设计 Spring IoC容器的设计主要是基于BeanFactory和ApplicationContext两个接口,其中ApplicationContext是BeanFactory的子接口之一.换句话说BeanFactory是Spring IoC容
前面我们已经介绍了几种为容器中添加组件的方法,今天一起学习通过FactoryBean添加组件的方法. 首先我们准备一个类,也就是我们需要注册进spring的ioc容器中的类 类Color: // 不必关心该类的具体代码实现,我们只是要把它注册进容器中即可 public class Color { private Car car; public Car getCar() { return car; } public void setCar(Car car) { this.car = car; }
给容器中注册组件的方式 1. 组件注解标注 + 包扫描(适用于自己写的类) //控制层组件 @Controller public class PersonController { } //业务逻辑层组件 @Service public class PersonServic { } //持久层组件 @Repository public class PersonDao { } //其他组件 @Component public class Person { } 包扫描(注解或者xml的方式) 1.使用
2.2.1 IOC容器的概念IOC容器就是具有依赖注入功能的容器,IOC容器负责实例化.定位.配置应用程序中的对象及建立这些对象间的依赖.应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装.在Spring中BeanFactory是IOC容器的实际代表者. Spring IOC容器如何知道哪些是它管理的对象呢?这就需要配置文件,Spring IOC容器通过读取配置文件中的配置元数据,通过元数据对应用中的各个对象进行实例化及装配.一般使用基于xml配置文件进行配置元数据,而且Sp
bean是Spring 最核心的东西,打个比方,假设Spring是一个水桶,那么bean就是水桶里的水,水桶离开水后,就没啥作用了.我们先来看一下bean的定义: public class Person { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int g
1. 简介 Spring 是一个轻量级的企业级应用开发框架,于 2004 年由 Rod Johnson 发布了 1.0 版本.经过十几年的迭代,现在的 Spring 框架已经非常成熟了.Spring 包含了众多模块,包括但不限于 Core.Bean.Context.AOP 和 Web 等.在今天,我们完全可以使用 Spring 所提供的一站式解决方案开发出我们所需要的应用.作为 Java 程序员,我们会经常和 Spring 框架打交道,所以还是很有必要弄懂 Spring 的原理. 本文是 Spr
声明!非原创,本文出处 Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的 IOC 容器.既然大家平时都要用到 Spring,怎么可以不好好了解 Spring 呢?阅读本文并不能让你成为 Spring 专家,不过一定有助于大家理解 Spring 的很多概念,帮助大家排查应用中和 Spring 相关的一些问题. 本文采用的源码版本是 4.3.11.RELEASE,算是 5.0.x 前比较新的版本了.为了降低难度,本文所说的所有的内容都是基于 xm