Spring自动注入(引用类型)
spring可以根据某些规则给引用类型完成赋值,只对引用类型有效。有两种方式实现自动注入,下面简单的介绍以下
1-ByName
按名称自动注入:Java类中引用类型的属性名称和spring容器中bean的id相同,且数据类型也相同的话,那么这些bean能够赋值给引用类型
示例:
创建student和school实体类,其中student有一个属性为school类型
配置文件中在student的bean标签对中添加autowire=“ByName” 。(可以看到我在配置文件中并未声明studnet的school属性 仅是添加了自动注入)
测试运行
运行结果:Student{name=‘小明’, age=18, school=School{name=‘北京大学’, address=‘北京市海淀区’}}
2-ByType
按类型注入:Java中引用类型的数据类型和spring容器中bean的class值是同源关系的,这样的bean赋值给引用类型
同源关系有三种
1-Java中引用类型的数据类型和bean的class值是一样的
2-Java中引用类型的数据类型和bean的class值是父子类关系的(多态)
3-Java中引用类型的数据类型和bean的class值是接口和实现类关系的(多态)
在语法上仅是将autowire="ByName"改为autowire="ByType"即可
Spring自动注入(引用类型)相关推荐
- 基于spring自动注入及AOP的表单二次提交验证
2019独角兽企业重金招聘Python工程师标准>>> 这几天在网上闲逛,看到了几个关于spring的token二次提交问题,受到不少启发,于是自己动手根据自己公司的项目框架结构,制 ...
- Spring自动注入
谈及一个问题,无非牵扯到三点,是什么,怎么来的,怎么用的 Spring自动注入是什么 是指容器中的一个组件中需要用到另一个组件(例如聚合关系)时,依靠spring容器创建对象,而不是手动创建: Spr ...
- 巧用 Spring 自动注入实现策略模式升级版
一.前言 1.1 背景 在工作过程中,有时候需要根据不同的枚举(常量)执行不同的逻辑. 比如不同的用户类型,使用不同的优惠政策:不同的配置变化,走不同的处理逻辑等. 下面模拟一个根据不同用户类型,走不 ...
- Spring自动注入原理
我的博客 spring的属性注入属于spring bean的生命周期一部分,bean的生命周期首先记住两个概念: spring bean:最终存在spring容器当中的对象 对象:实例化出来的对象,但 ...
- 【Spring】Spring 自动注入(autowire)详解
1.概述 转载:添加链接描述 2. 手动注入的不足 [Spring]Spring 依赖注入之手动注入 上篇文章中介绍了依赖注入中的手动注入,所谓手动注入是指在xml中采用硬编码的方式来配置注入的对象, ...
- java应用中spring自动注入_Spring自动注入的几种方式
---恢复内容开始--- @Service("accountEmailService") public class AccountEmailServiceImpl implemen ...
- Spring自动注入的几种方式
---恢复内容开始--- @Service("accountEmailService") public class AccountEmailServiceImpl implemen ...
- java应用中spring自动注入_java-Spring Security会自动过滤注入吗?
我有一个使用spring-security core v4.1.1.RELEASE的spring-boot应用程序(spring-boot v1.3.3.RELEASE). 看来,如果我通过扩展Onc ...
- spring自动注入--------
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
最新文章
- PaddlePaddle版Flappy-Bird—使用DQN算法实现游戏智能
- linux declare大小写,关于linux:将用户输入转换为大写
- SQL 中 PROCEDURE,TRIGGER,FUNCTION简单应用
- C和指针之反转字符串
- java自定义栈类代码,异常堆栈和自定义类
- 资源管理与调度系统-YARN资源隔离及以YARN为核心的生态系统
- 代码英雄:波澜壮阔的操作系统之战(音频+长文)
- 让刺猬和狐狸结婚:资本巨鳄BlackRock的金融科技野心
- IplImage 加载图像
- java数据结构——树的实现
- 【无标题】红外人脸数据集
- 动手学深度学习讲义批量下载
- Glide图片框架使用详细介绍(一),手握5家大厂offer
- 宁德时代钠电池雷声大,雨点小?
- 360插件化方案RePlugin学习笔记-插件使用宿主中的类
- Windows无线网络设置中的7种安全类型简介
- java实现mysql的导入导出_Java实现mysql导入导出Excel
- 微信服务商子商户支付
- 【Maxent】最大熵的数学原理及其在推断问题中的应用
- Linux运维学习笔记之三十一:监控利器Nagios实战
热门文章
- bibliometrix-BiblioShiny使用
- 浙江省高考报考类别计算机,2019浙江高考一分一段表出炉!这些志愿填报的关键信息和节点一定要了解~...
- 一款优秀的BIDS辅助工具-BIDS Helper
- 微信小程序开发关于地图图片显示不出问题
- python三国演义人物 统计分析_Python统计三国演义主要人物出场次数
- 域名信息收集--渗透测试
- python1 2 100_GitHub - smm113522/Python-100-Days: Python - 100天从新手到大师
- 【矩阵论笔记】线性变换在不同基偶下的矩阵之间的关系
- 基于动态径向基函数(DRBF)代理模型的优化策略
- 2019TLC大会精彩回顾—大前端·信息流