浅谈Spring IOC来咯~

简介: 浅谈Spring IOC来咯~

2.1 IOC :控制反转

2.1.1 搭建Spring环境

下载jar

maven.springframework.org/release/org…

spring-framework-4.3.9.RELEASE-dist.zip

开发spring至少需要使用的jar(5个+1个):

spring-aop.jar 开发AOP特性时需要的JAR

spring-beans.jar 处理Bean的jar

spring-context.jar 处理spring上下文的jar

spring-core.jar spring核心jar

spring-expression.jar spring表达式

三方提供的日志jar

commons-logging.jar 日志

2.1.2 编写配置文件

直接下载sts工具(相当于一个集合了Spring tool suite的Eclipse): spring.io/tools/sts/

新建:bean configuration .. - applicationContext.xml

网络异常,图片无法展示
|


2.1.3 开发Spring程序(IOC)

网络异常,图片无法展示
|


过程:

Student.java

public class Student {
  private** **int** stuNo ;
  private** String stuName ;
**private** **int** stuAge ;
**public** **int** getStuNo() {
**return** stuNo;
}
**public** **void** setStuNo(**int** stuNo) {
**this**.stuNo = stuNo;
}
**public** String getStuName() {
**return** stuName;
}
**public** **void** setStuName(String stuName) {
**this**.stuName = stuName;
}
**public** **int** getStuAge() {
**return** stuAge;
}
**public** **void** setStuAge(**int** stuAge) {
**this**.stuAge = stuAge;
}
@Override
**public** String toString() {
**return** **this**.stuNo+","+**this**.stuName+","+**this**.stuAge;
}
复制代码

Teat.java

//Spring上下文对象:conext

ApplicationContext conext = **new** ClassPathXmlApplicationContext("applicationContext.xml") ;
//执行从springIOC容器中获取一个 id为student的对象
Student student = (Student)conext.getBean("student") ;
System.***out***.println(student);
复制代码

//1.new

//2.对象属性的复制x


applicationContext.xml


<bean id= "student"  class= "org.lanqiao.entity.Student" >

<property name= "stuNo"  value= "2" >

<property name= "stuName"  value= "ls" >

<property name= "stuAge"  value= "24" >

 

2.1.4  SpringIOC发展史

网络异常,图片无法展示
|


2.1.5 总结

1.控制反转:

将 创建对象、属性值 的方式 进行了翻转,从new、setXxx()  翻转为了 从springIOC容器getBean()

1. 依赖注入:

将属性值 注入给了属性,将属性 注入给了bean,将bean注入给了ioc容器;

 

总结:

ioc/di ,无论要什么对象,都可以直接去springioc容器中获取,而不需要自己操作(new\setXxx())


相关文章
|
8月前
|
XML Java 测试技术
Spring IOC—基于注解配置和管理Bean 万字详解(通俗易懂)
Spring 第三节 IOC——基于注解配置和管理Bean 万字详解!
518 26
|
5月前
|
XML Java 数据格式
Spring IoC容器的设计与实现
Spring 是一个功能强大且模块化的 Java 开发框架,其核心架构围绕 IoC 容器、AOP、数据访问与集成、Web 层支持等展开。其中,`BeanFactory` 和 `ApplicationContext` 是 Spring 容器的核心组件,分别定位为基础容器和高级容器,前者提供轻量级的 Bean 管理,后者扩展了事件发布、国际化等功能。
|
10月前
|
XML Java 数据格式
【SpringFramework】Spring IoC-基于XML的实现
本文主要讲解SpringFramework中IoC和DI相关概念,及基于XML的实现方式。
198 69
|
7月前
|
Java 容器 Spring
什么是Spring IOC 和DI ?
IOC : 控制翻转 , 它把传统上由程序代码直接操控的对象的调用权交给容 器,通过容器来实现对象组件的装配和管理。所谓的“控制反转”概念就是对组件对象控制权的转 移,从程序代码本身转移到了外部容器。 DI : 依赖注入,在我们创建对象的过程中,把对象依赖的属性注入到我们的类中。
|
10月前
|
设计模式 XML Java
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
本文详细介绍了Spring框架的核心功能,并通过手写自定义Spring框架的方式,深入理解了Spring的IOC(控制反转)和DI(依赖注入)功能,并且学会实际运用设计模式到真实开发中。
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
|
10月前
|
Java Spring 容器
【SpringFramework】Spring IoC-基于注解的实现
本文主要记录基于Spring注解实现IoC容器和DI相关知识。
146 21
|
10月前
|
存储 Java 应用服务中间件
【Spring】IoC和DI,控制反转,Bean对象的获取方式
IoC,DI,控制反转容器,Bean的基本常识,类注解@Controller,获取Bean对象的常用三种方式
235 12
|
10月前
|
存储 缓存 Java
Spring面试必问:手写Spring IoC 循环依赖底层源码剖析
在Spring框架中,IoC(Inversion of Control,控制反转)是一个核心概念,它允许容器管理对象的生命周期和依赖关系。然而,在实际应用中,我们可能会遇到对象间的循环依赖问题。本文将深入探讨Spring如何解决IoC中的循环依赖问题,并通过手写源码的方式,让你对其底层原理有一个全新的认识。
208 2
|
XML Java 数据格式
Spring IOC—基于XML配置Bean的更多内容和细节(通俗易懂)
Spring 第二节内容补充 关于Bean配置的更多内容和细节 万字详解!
626 18
Spring IOC—基于XML配置Bean的更多内容和细节(通俗易懂)
|
12月前
|
存储 开发框架 Java
什么是Spring?什么是IOC?什么是DI?IOC和DI的关系? —— 零基础可无压力学习,带源码
文章详细介绍了Spring、IOC、DI的概念和关系,解释了控制反转(IOC)和依赖注入(DI)的原理,并提供了IOC的代码示例,阐述了Spring框架作为IOC容器的应用。
741 1
什么是Spring?什么是IOC?什么是DI?IOC和DI的关系? —— 零基础可无压力学习,带源码