Spring的核心概念是IoC,IoC的抽象概念是“依赖关系的转移”
程序不依赖于实现,而是程序与实现都依赖于抽象。
将控制权由实现的一方转移至抽象的一方, 藉由让抽象方拥有控制权,可获得组件的可重用性。
Spring所采用的是依赖注入来实现IoC.
依赖注入的意义是:
保留抽象接口,让组件依赖于抽象接口,当组件要与其他实际的对象发生依赖关系时,
藉由抽象接口来注入依赖的实际对象。
Spring的IoC容器的最大特点是实现了反转控制,也就是说在开发过程中,开发人员不需要关心容器是怎样的,也不需要调用容器的任何API,容器会自动进行被管理对象的初始化以及对象之间依赖关系的维护。
对于IoC容器的理解,最关键的是编程思想的转变。
Spring的IoC容器就是一个通用的Bean工厂,它可以通过各种方式获得Bean对象以
及进行Bean对象的管理。
IoC容器可以管理任何的Java对象
第一个Spring程序:
=============
HelloBean.java
-------------------------------------------------------------------------------------------
public class HelloBean {
public String helloWord;
public String getHelloWord() {
return helloWord;
}
public void setHelloWord(String helloWord) {
this.helloWord = helloWord;
}
}
==============
applicationContext.xml
--------------------------------------------------------------------------------------------
<?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-2.0.xsd">
<!--定义了一个Bean-->
<bean id="helloBean" class="only.HelloBean">
<property name="helloWord">
<value>Hello!Justin!</value>
</property>
</bean>
</beans>
===============
SpringDemo.java
----------------------------------------------------------------------------------------------
package only;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.Resource;
public class SpringDemo {
public static void main(String[] args) {
Resource rs=
new FileSystemResource("src/applicationContext.xml"); //可指定绝对或相对路径来指定Bean 定义文件的位置。
BeanFactory factory=new XmlBeanFactory(rs); //创建Bean工厂
HelloBean hello=(HelloBean)factory.getBean("helloBean"); //创建对象
System.out.println(hello.getHelloWord()); //应用Bean对象
}
}
运行输出:
- 大小: 25 KB
分享到:
相关推荐
02_spring核心技术-IOC.ppt
这个jar文件"Spring-ioc-jar"包含了实现Spring IOC功能所需的关键类和接口,是学习和使用Spring IOC技术的基础。 Spring框架的IOC容器是其核心组件,主要由`ApplicationContext`和`BeanFactory`两个接口代表。`...
在Spring中,动态代理是实现AOP(面向切面编程)的核心技术之一。CGLIB和Java的内置JDK动态代理是两种常用的动态代理方式。当目标类实现了接口时,Spring会选择JDK动态代理,通过反射机制创建代理对象;反之,如果...
Spring的核心设计理念是依赖注入(Dependency Injection,简称DI),它通过反转控制(Inversion of Control,IoC)来降低组件之间的耦合度。这种设计模式使得应用程序的配置和业务逻辑分离,从而提高了代码的可测试...
Spring_IOC-v(上)笔记是关于 Spring 框架中的 IoC(控制反转)技术的笔记,主要介绍了 IoC 的概念、依赖注入、Bean 的设置、Spring 组件的管理等知识点。 IoC 技术是 Spring 框架的核心概念之一,它的主要思想...
**Spring技术--IOC控制反转** 在Java开发领域,Spring框架以其强大的功能和广泛的应用而闻名。其中,IOC(Inversion of Control,控制反转)是Spring的核心特性之一,它改变了传统对象创建和管理的方式,实现了依赖...
例如,`http://www.springframework.org/schema/beans`是Spring核心组件的配置命名空间,`http://www.springframework.org/schema/aop`则用于配置AOP方面的相关规则。 4. **Spring 5.0.0.RELEASE** 版本的改进与新...
017-spring-ioc-核心容器理解.mp4 018-spring-ioc-ioc和di理解.mp4 019-spring-ioc-IoC实践基本步骤.mp4 020-spring-ioc0基于xml的ioc的配置.mp4 021-spring-ioc-基于xml的di配置.mp4 022-spring-ioc-基于xml的...
017-spring-ioc-核心容器理解.mp4 018-spring-ioc-ioc和di理解.mp4 019-spring-ioc-IoC实践基本步骤.mp4 020-spring-ioc0基于xml的ioc的配置.mp4 021-spring-ioc-基于xml的di配置.mp4 022-spring-ioc-基于xml的...
017-spring-ioc-核心容器理解.mp4 018-spring-ioc-ioc和di理解.mp4 019-spring-ioc-IoC实践基本步骤.mp4 020-spring-ioc0基于xml的ioc的配置.mp4 021-spring-ioc-基于xml的di配置.mp4 022-spring-ioc-基于xml的...
017-spring-ioc-核心容器理解.mp4 018-spring-ioc-ioc和di理解.mp4 019-spring-ioc-IoC实践基本步骤.mp4 020-spring-ioc0基于xml的ioc的配置.mp4 021-spring-ioc-基于xml的di配置.mp4 022-spring-ioc-基于xml的...
### Spring Framework 4.3.19版本关键知识点解析 #### 一、Spring框架概览 ...以上是对Spring Framework 4.3.19版本的关键知识点的解析,希望能够帮助开发者更好地理解和掌握Spring框架的核心功能和新特性。
下面我们将深入探讨Spring Framework 5.1.4的源码,了解其背后的设计理念和技术实现。 首先,源码分析从`spring-framework-5.1.4.RELEASE-dist.zip`开始,这是Spring框架的基础组件包,包含了所有核心模块的类库和...
- Spring提供了对各种持久化技术的支持,包括JDBC、ORM(如Hibernate、MyBatis)和OXM(Object-XML Mapping)。它简化了数据库操作,并提供了事务管理服务。 6. **Spring Aspects**: - Spring Aspects扩展了AOP...
它提供了一种将Spring容器与OSGi服务层集成的方法,使得开发者可以使用Spring的IoC(控制反转)和AOP(面向切面编程)特性来管理OSGi服务。 3. **1.2.0-rc1版本** "spring-osgi-1.2.0-rc1"是Spring OSGi的一个早期...
- **核心容器**:包括 BeanFactory 和 ApplicationContext,提供 IoC 容器的基础实现。 - **AOP 和 Instrumentation**:提供面向切面编程支持和类加载时增强。 - **消息传递**:支持多种消息传递协议如 AMQP。 -...
2. **IoC(控制反转)容器**:IoC 容器是 Spring 的核心,它负责管理对象的生命周期和依赖关系。开发者可以使用XML配置或注解来声明对象及其依赖关系,实现组件的装配。 3. **Spring MVC**:作为Web应用的主干,...
Spring 框架的核心组件包括IoC(Inversion of Control,控制反转)容器、AOP(Aspect Oriented Programming,面向切面编程)、数据访问/集成层、Web层等。IoC 容器是Spring的基石,它负责管理应用对象的生命周期和...
Spring学习笔记,主要包括核心技术IOC和AOP
1. **核心容器**:Spring的核心在于其IoC(Inversion of Control)和DI(Dependency Injection)容器。5.0.19.RELEASE版本中的Bean工厂和ApplicationContext接口,使得开发者能够轻松管理对象的生命周期和依赖关系,...