1,构造器注入:通过在bean定义中指定构造器参数。
2.setter注入。
Bean容器注入依赖资源依赖的资源可以使bean,文件,数据常量。由容器负责组装。
1.构造器注入:
<bean>
<contructor-arg='' index='' value=''/>
</bean>
构造器通过参数索引、参数类型注入:
1)参数索引注入,constructor-arg index="1" value="1"/>来指定注入的依赖,其中“index”表示索引,从0开始,即第一个参数索引为0,“value”来指定注入的常量值
2)参数类型注入,<constructor-arg type="java.lang.String" value="Hello World!"/>”来指定注入的依赖,其中“type”表示需要匹配的参数类型,可以是基本类型也可以是其他类型
3)参数名进行注入,使用标签“<constructor-arg name="message" value="Hello World!"/>”来指定注入的依赖,其中“name”表示需要匹配的参数名字,“value”来指定注入的常量值
1)常量值
简写:<constructor-arg index="0" value="常量"/>
全写:<constructor-arg index="0"><value>常量</value></constructor-arg>
2)引用
简写:<constructor-arg index="0" ref="引用"/>
全写:<constructor-arg index="0"><ref bean="引用"/></constructor-arg>
JavaBean:是本质就是一个POJO类,但具有一下限制:
该类必须要有公共的无参构造器
属性为private访问级别,不建议public,如private String message;
属性必要时通过一组setter(修改器)和getter(访问器)方法来访问;
setter方法,以“set” 开头,后跟首字母大写的属性名,如“setMesssage”,简单属性一般只有一个方法参数,方法返回值通常为“void”;
getter方法,一般属性以“get”开头,对于boolean类型一般以“is”开头,后跟首字母大写的属性名,如“getMesssage”,“isOk”;
2.setter注入:
注入bean:
<property name="id"><idref local="bean2"/></property>
<property name="id"><idref bean="bean2"/></property>
1)常量值
简写:<property name="message" value="常量"/>
全写:<property name="message"><value>常量</value></ property>
2)引用
简写:<property name="message" ref="引用"/>
全写:<property name="message"><ref bean="引用"/></ property>
3)数组:<array>没有简写形式
4)列表:<list>没有简写形式
5)集合:<set>没有简写形式
6)字典
简写:<map>
<entry key="键常量" value="值常量"/>
<entry key-ref="键引用" value-ref="值引用"/>
</map>
全写:<map>
<entry><key><value>键常量</value></key><value>值常量</value></entry>
<entry><key><ref bean="键引用"/></key><ref bean="值引用"/></entry>
</map>
7)Properties:没有简写形式
-----------------------------------------------------------------------------------------------------------------------------
延迟初始化Bean:惰性初始化,不提前初始化Bean,而是只有在真正使用时才创建及初始化。配置方式:在<bean>标签上指定 “lazy-init” 属性值为“true”
延迟初始化的Bean通常会在第一次使用时被初始化;或者在被非延迟初始化Bean作为依赖对象注入时在会随着初始化该Bean时被初始化
spring 自动装配:
由spring自动依赖对象。@Autowired注解方式,自动装配减少构造器注入和setter注入配置,通过配置<bean>标签的“autowire”属性来改变自动装配方式
default:表示使用默认的自动装配,默认的自动装配需要在<beans>标签中使用default-autowire属性指定,其支持“no”、“byName ”、“byType”、“constructor”四种自动装配
相关推荐
学习Spring IOC,你需要理解Bean的定义、作用域、依赖注入的原理和方式,以及如何通过配置文件或注解来配置Bean。同时,掌握如何利用ApplicationContext获取Bean,以及如何利用AOP和生命周期管理功能,将帮助你更好...
Spring_IOC-v(上)笔记是关于 Spring 框架中的 IoC(控制反转)技术的笔记,主要介绍了 IoC 的概念、依赖注入、Bean 的设置、Spring 组件的管理等知识点。 IoC 技术是 Spring 框架的核心概念之一,它的主要思想...
Spring的核心特性之一就是它的Inversion of Control(IoC,控制反转)容器,也被称为Dependency Injection(DI,依赖注入)。这个概念是Spring框架使应用程序组件之间解耦的关键。让我们深入探讨一下Spring的IoC和...
Spring IoC容器主要通过两种方式实现依赖注入: 1. **构造器注入**:通过类的构造方法来注入依赖项。 2. **设值注入**:通过setter方法来注入依赖项。 #### 四、使用注解进行依赖注入 随着Spring框架的发展,除了...
031-spring-ioc-di注入注解语法.mp4 032-spring-ioc-属性@Value注解.mp4 033-spring-ioc-注解三层综合案例.mp4 034-spring-ioc--配置类和完全注解开发介绍.mp4 035-spring-ioc-@Bean注解使用.mp4 036-spring-...
031-spring-ioc-di注入注解语法.mp4 032-spring-ioc-属性@Value注解.mp4 033-spring-ioc-注解三层综合案例.mp4 034-spring-ioc--配置类和完全注解开发介绍.mp4 035-spring-ioc-@Bean注解使用.mp4 036-spring-...
031-spring-ioc-di注入注解语法.mp4 032-spring-ioc-属性@Value注解.mp4 033-spring-ioc-注解三层综合案例.mp4 034-spring-ioc--配置类和完全注解开发介绍.mp4 035-spring-ioc-@Bean注解使用.mp4 036-spring-...
031-spring-ioc-di注入注解语法.mp4 032-spring-ioc-属性@Value注解.mp4 033-spring-ioc-注解三层综合案例.mp4 034-spring-ioc--配置类和完全注解开发介绍.mp4 035-spring-ioc-@Bean注解使用.mp4 036-spring-...
在Spring中,IOC的主要实现方式有两种:依赖注入(Dependency Injection,简称DI)和基于接口的配置。下面将对这两种方式进行详细阐述。 一、依赖注入(Dependency Injection) 1. **构造器注入**:通过构造函数来...
Spring IoC容器通过XML配置或注解实现了对象的创建、管理和依赖注入,极大地简化了Java应用的复杂性。理解并熟练运用Spring IoC,能够帮助开发者构建更灵活、易于测试和维护的系统。在实际开发中,还可以结合@...
Spring 框架是 Java 开发中不可或缺的一部分,它以其强大的依赖注入(Dependency Injection, DI)和控制反转(Inversion of Control, IOC)特性而闻名。在这个名为“spring-demo02-IOC-DI案例”的压缩包中,我们将...
Spring Ioc(Inversion of Control,控制反转)是Spring框架的核心特性之一,它改变了传统应用程序中对象的创建和管理方式。在传统的软件设计中,对象的创建和依赖关系的维护通常由代码自身来完成,而在Spring Ioc中...
在本文中,我们将深入探讨Spring框架的核心特性——控制反转(Inversion of Control,简称IoC)和依赖注入(Dependency Injection,简称DI),以及如何通过注解配置和Maven项目构建来实现这一概念。Spring框架是Java...
在Spring框架中,IoC容器负责创建对象、管理它们之间的依赖关系,并在需要时注入这些依赖。 让我们开始分析“Priter”类。这个类代表了打印机,它可能有一个或多个方法用于执行打印操作。为了实现灵活性,我们不...
在Spring IOC中,主要的注入方式有以下几种: 1. **构造器注入**:通过构造函数传递依赖对象,Spring容器会根据构造函数的参数类型创建并注入相应的对象。这种方式确保对象在创建时就具备所有依赖,增强了对象的...
SPRING IOC注入方式过程解析 SPRING IOC是一种轻量级的控制反转(Inversion of Control)容器框架,主要用于解耦合Java应用程序中的组件。其中,IOC(Inversion of Control)注入是SPRING IOC的核心机制之一。下面...
使用注解,可以让开发者以更加直观和简洁的方式实现依赖注入和面向切面编程(AOP)等高级功能。 ### CRUD操作 CRUD是数据持久层的四个基本操作:Create(创建)、Read(读取)、Update(更新)、Delete(删除)的...
spring-core:核心模块 依赖注入IOC和DI的最基本实现 spring-beans:Bean工厂与装配 spring-context:上下文,即IOC容器 spring-context-support:对IOC的扩展,以及IOC子容器 spring-context-indexer:类管理组件和...
Annotation注入是Spring IOC的一种实现方式,它利用Java注解替代XML配置来管理Bean的依赖关系,使得代码更加简洁、可读性更强。 在Spring框架中,我们主要关注以下几个关键的注解: 1. `@Component`:这是一个基础...
Spring通过两种方式实现依赖注入:构造器注入和setter注入。 - **构造器注入**: 在构造器中注入依赖,并在`<bean>`元素中指定构造器参数。 ```xml <constructor-arg> </constructor-arg> ``` - **...