Spring——依赖注入

简介: Spring——依赖注入

目录


什么是依赖注入?

依赖注入之setter注入

依赖注入之构造器注入

特殊值处理

依赖注入之引用类型赋值:

依赖注入之数组类型赋值

依赖注入之list集合类型赋值

依赖注入之map集合类型赋值


什么是依赖注入?

组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。依赖注入的目的并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系统搭建一个灵活、可扩展的平台。通过依赖注入机制,我们只需要通过简单的配置,而无需任何代码就可指定目标需要的资源,完成自身的业务逻辑,而不需要关心具体的资源来自何处,由谁实现。


依赖注入之setter注入


0964d29096fbdd29822b5f55d3ce0e43.png


依赖注入之构造器注入


e5768bfbd319db01c74717001f4a3e80.png


特殊值处理

①、字面量赋值


什么是字面量?


int a = 10;


声明一个变量a,初始化为10,此时a就不代表字母a了,而是作为一个变量的名字,当我们引用a的时候,我们实际上拿到的值是10。


而如果a是带引用的‘a’,那么它现在不是一个变量,它就是代表a这个字母本身,这就是字面量,所以字面量没有引申含义,就是我们看到的这个数据本身。


通过value直接给字面量赋值;


4d9245849c903d326e871fc834047f44.png


②、null赋值:通过null标签来给属性赋值为null;


b1897b7600e068e6f76e1d109dfcfdb6.png


③、实体:通过XML实体来代替大于号和小于号


1a4d07a9f49237385fd1d4a3a4adc206.png


④、CDATA节:XML中的一个特殊标签,其中的内容会原样解析;


4c70ff0e4d1429ad4237d2c814960a67.png


依赖注入之引用类型赋值:

第一种方式:ref属性;



ref属性,引用IOC容器中某个bean的id;


8b0412449d53c92b921d491554614333.png


第二种方式:级联——级联的方式,要保证提前为clazz属性赋值或者实例化;


d73e48d4e3902d21803b5d0a894db908.png


第三种方式:内部bean——内部bean的方式只能在当前bean的内部使用,不能直接通过IOC容器获取;


61c7313f27a19ed4386dc185b550c51b.png


依赖注入之数组类型赋值

基本类型:利用array标签;


459f5d85539877e8e3ca1e4fcae82b8a.png


引用类型:将value标签更换为ref;


12c4c96d82d50ba08c420e2bd26b8c60.png


依赖注入之list集合类型赋值

第一种方式:使用list标签进行赋值;


8ff7d66d2cdeb120549c06e7fae179ce.png


第二种方式:引用一个集合类型的bean来赋值;


8b3136ce409c83ee6898d833d2460560.png


依赖注入之map集合类型赋值



b31d34e7298356f33a5d95c325f29a5b.png



目录
相关文章
|
3月前
|
开发框架 Java Spring
Spring依赖注入以及使用建议
Spring依赖注入以及使用建议
52 0
|
3月前
|
XML Java 数据格式
Spring系列文章2:基于xml方式依赖注入
Spring系列文章2:基于xml方式依赖注入
|
1月前
|
XML Java 测试技术
Spring Boot中的依赖注入和控制反转
Spring Boot中的依赖注入和控制反转
|
3月前
|
XML Java 程序员
Spring6框架中依赖注入的多种方式(推荐构造器注入)
依赖注入(DI)是一种过程,对象通过构造函数参数、工厂方法的参数或在对象实例构建后设置的属性来定义它们的依赖关系(即与其一起工作的其他对象)。
50 3
|
3月前
|
Java 测试技术 开发者
Spring IoC容器通过依赖注入机制实现控制反转
【4月更文挑战第30天】Spring IoC容器通过依赖注入机制实现控制反转
41 0
|
17天前
|
设计模式 自然语言处理 Java
简单了解下Spring中的各种Aware接口实现依赖注入
在Spring框架中,Aware接口是一组用于提供特定资源或环境信息的回调接口。这些接口被设计用来允许Bean获取对Spring容器或其他相关资源的引用,并在需要时进行适当的处理。
15 2
|
30天前
|
缓存 Java Spring
Spring循环依赖问题之Spring不支持构造器内的强依赖注入如何解决
Spring循环依赖问题之Spring不支持构造器内的强依赖注入如何解决
|
2月前
|
设计模式 Java 测试技术
Spring Boot中的依赖注入详解
Spring Boot中的依赖注入详解
|
2月前
|
缓存 Java 测试技术
Spring 框架,不只是依赖注入和面向切面那么简单!
【6月更文挑战第25天】Spring框架超越DI和AOP,涵盖事务管理、数据访问抽象如`JdbcTemplate`、消息驱动支持如`@JmsListener`、缓存管理和测试工具。示例代码展示了其简化复杂性的能力,如自动事务处理、数据库操作及消息队列监听。Spring是构建高效企业级应用的全面解决方案。
28 4
|
2月前
|
Java Spring 容器
spring如何进行依赖注入,通过set方法把Dao注入到serves
spring如何进行依赖注入,通过set方法把Dao注入到serves