spring 注解实现自动装配bean

(史上最全的)Spring6框架学习教程 Spring框架英文全称Spring framework,是由Spring团队研发的模块化、轻量级开源框架。其主要目的 是为了简化项目开发。在项目开发中,可以说没有刻意使用Spring,却处处有着Spring存在,用官网对Spring框架的介绍:Spring框架核心功能包含依赖注入、事务管理、Web应用、数据访问、消息发送等等。Spring框架的设计理念基于以下核心原则:轻量级设计:轻量级设计是Spring框架的首要原则之一。 阅读详情

@Autowired
@Autowired是按类型自动转配的,不支持id匹配。

需要导入 spring-aop的包!

具体的context 及其aop 的约束、配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop.xsd
        ">
<!--配置一些注解支持 及其注解约束-->

@Autowired(required=false) 说明:false,对象可以为null;true,对象必须存对象,不能为null。

@Qualifier
@Autowired是根据类型自动装配的,加上@Qualifier则可以根据byName的方式自动装配

@Qualifier不能单独使用。需要配合@Autowired

 @Autowired
    @Qualifier(value = "cat121")
    private cat cat;

@Resource
@Resource如有指定的name属性,先按该属性进行byName方式查找装配;

    @Resource(name ="dog232")
    private dog dog;

其次再进行默认的byName方式进行装配;

如果以上都不成功,则按byType的方式自动装配。

都不成功,则报异常

@Autowired与@Resource异同:

1、@Autowired与@Resource都可以用来装配bean。都可以写在字段上,或写在setter方法上。

2、@Autowired默认按类型装配(属于spring规范),默认情况下必须要求依赖对象必须存在,如果要允许null 值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用

3、@Resource(属于J2EE复返),默认按照名称进行装配,名称可以通过name属性进行指定。如果没有指定name属性,当注解写在字段上时,默认取字段名进行按照名称查找,如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。

它们的作用相同都是用注解方式注入对象,但执行顺序不同。@Autowired先byType,@Resource先byName。

Spring - 装配Spring Bean-通过注解自动装配-@Autowired) 通过注解装配Spring Bean(下)自动装配-@Autowired实现自动装配 自动装配-@Autowired 在上一节中还有一个对象注入问题没有解决,关于这个问题,在大部分情况下建议使用自动装配,可以减小配置的复杂度。 通过学习Spring IOC容器,我们知道Spring是先完成Bean的定义和生成,然后当Spring生成所有的Bean后,如果发现注解@AutoWired,他就会在Bean... 阅读详情

相关推荐

实战指南:如何优雅解决SpringBoot3与Mybatis-Plus的版本兼容性问题

本文深入解析SpringBoot3与Mybatis-Plus的版本兼容性问题,提供实战解决方案。通过Maven依赖排除策略、Gradle配置方案及自动配置覆盖策略,有效解决包冲突和初始化顺序问题,确保项目平稳升级。适用于开发者快速解决SpringBoot3与Mybatis-Plus的集成难题。

weixin_28432777的博客 569

Spring使用注解实现Bean自动装配

Spring使用注解实现Bean自动装配 一、利用注解方式注入属性 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/sche

qq_41359998的博客 545

Balser相机的硬件触发实战:从连线到信号处理

本文详细介绍了Balser相机硬件触发的实战应用,从硬件接线、信号定义到软件配置(Pylon Viewer及API)提供了完整指南。重点阐述了如何利用外部物理电信号实现微秒级精准触发,解决工业场景下的同步与延迟问题,并分享了信号调理、抗干扰等高级实战经验。

y9z0a1b的博客 311

13、注解实现自动装配

使用注解 jdk1.5开始支持注解spring2.5开始全面支持注解。 准备工作:利用注解的方式注入属性。 1、在spring配置文件中引入context文件头 xmlns:context="http://www.springframework.org/schema/context" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context

qq_23889885的博客 492

Spring6基础学习

含义: 控制反转的实现方式有多种, 其中比较重要的叫做: 依赖注入(Dependency Injection, DI).功能: 实现了IoC思想, 可以自动new对象和维护对象之间的关系, 是实现了IoC的容器.条件: 在扩展系统功能的时候, 没有修改以前写好的代码, 就符合OCP原则. 反之不符合.软件七大开发原则中最基本, 最核心的原则, 开闭原则: 对扩展开放, 对修改关闭.依赖: 对象之间的关系. 注入: 让对象之间产生关系的手段.凡是上依赖下的, 都违背了依赖倒置原则.

qq_53350942的博客 272

[Skill]Android自动化构建

Android自动化构建本文的目的不是介绍如何搭建Jenkins,而是介绍如何在Jenkins中搭建Android自动化构建环境。安装Jenkins Gradle插件Jenkins原生并不支持Gradle语法,因此需要安装Gradle插件。 下载:Gradle插件 上传并安装。 创建任务配置安装好Gradle插件之后,跟创建常规任务一样,新建一个自动化构建任务,需要注意的几个点: 构建工具选择:In

AlexMofer的博客 1066

Spring - 6 ( 4000 字 Spring 入门级教程 )

spring 4000 字入门第六篇

weixin_73232539的博客 1805

Spring学习 自动装配Bean 自动装配注解实现

自动装配Spring满足bean依赖的一种方式!Spring会在上下文中自动寻找,并自动给bean装配属性。

g4ilolii的博客 199

Spring(2)—自动装配BeanSpring注解开发、使用java的方式配置Spring、AOP的实现

1、自动装配Bean 自动装配Bean是指Spring会在上下文中自动寻找,来给Bean装配属性 Spring由三种装配方式: XML中显示装配 java中显式装配 隐式的自动装配Bean 自动装配Bean的测试 (1)环境 public class Cat { public void shot(){ System.out.println("miao~"); } } public class Dog { public void shot(){

weixin_42182892的博客 177

Spring学习(5)Bean的作用域、自动装配注解实现自动装配

Bean的作用域(scope) 单例模式(singleton,Spring默认机制) <bean id="user2" class="com.kuang.pojo.User" c:age="18" c:name="练习" scope="singleton"/> 原型模式(prototype):每次从容器中get的时候,都会产生一个新对象! <bean id="user2" class="com.kuang.pojo.User" c:age="18" c:name="练习" sco

魏无羡ⁿ的博客 179

Spring 源码(九)@Autowired注解实现原理(Spring Bean自动装配

@Autowired注解实现过程,其实就是Spring Bean自动装配过程。通过看@Autowired源码注释部分我们可以看到@Autowired的实现是通过AutowiredAnnotationBeanPostProcessor后置处理器中实现的。 AutowiredAnnotationBeanPostProcessor 类图 PriorityOrdered:确认 AutowiredA...

xiaolyuh的专栏 1786

spring(二)---注解开发/注解实现bean自动装配

文章目录一、注解实现bean自动装配二、注解开发 一、注解实现bean自动装配 自动装配Spring满足bean依赖一种方式!Spring会在上下文中自动寻找,并自动给bean装配属性! 下面我,我们来做以下实验: 建立如下测试环境:一个人一只猫一只狗 public class Dog { public void getshout(){ System.out.printl...

qq_42022411的博客 393

Spring学习|Bean的作用域、自动装配Bean注解实现自动装配Spring注解开发

单例模式(Spring默认机制)原型模式:每次从容器中get的时候,都会产生一个新对象!

weixin_73149966的博客 271

Spring学习(六)Bean自动装配及使用注解实现自动装配

Bean自动装配 自动装配Spring满足bean依赖一种方式! Spring会在上下文中自动寻找,并自动给bean装配属性! 在Spring中有三种装配方式 在xml中显式的配置 在java中显式配置 隐式的自动装配bean[重要] 示例 (1)创建实体类 public class Cat { public String cat; public void shut(){ System.out.println("miao"); } @Overrid

一点莹的博客 329

@bean注解和@component注解的区别_Spring框架之Bean自动装配注解实现自动装配...

本节我们来介绍Bean自动装配自动装配指的是使用spring满足bean依赖的一种方法 ,spring会在应用上下文中为某个bean寻找其依赖的bean。在对Bean自动装配介绍之前,我们先搭建要测试的环境,如下:1.新建一个项目此处命名为spring-05-autowired,在该项目的基础上新建三个实体类,分别为狗类、猫类及人物类。(1)其中,在狗类Dog类中编写shout方...

weixin_34475951的博客 505

实战 在Spring IOC容器中 实现 Bean自动装配注解实现 自动装配方式 (五)

自动装配Spring满足Bean依赖的一种方式! Spring会在上下文中自动寻找,并自动给Bean装配属性! 在Spring中有三种装配的方式 1、在xml 中显示配置 2、在Java中显示配置 3、隐式的自动装配Bean【重要】 ...

禧年 465

spring(10)——使用注解实现bean自动装配@Autowired、@Qualifier、@Resource

1.使用注解需要先引入支持注解的环境 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:c="http://www.springframework.org/schema/c"

木子 旭的博客 391

Spring 源码解读:手动实现自动装配与@Qualifier

Spring开发中,自动装配是简化依赖注入的强大工具。你知道如何手动实现类似Spring自动装配机制吗?通过这篇文章,你将学会如何创建支持按类型和按名称注入的自动装配机制,并深入了解@Autowired和@Qualifier注解的底层原理。无论你是Spring新手还是老手,这篇文章都将帮助你更好地掌握自动装配的核心概念,让你的Spring开发更加得心应手。立即探索并提升你的Spring技能吧!

qq_40254606的博客 1185

spring-使用注解实现Bean自动装配2

一、创建项目 项目名称spring100802二、在项目中添加spring 支持 1.在项目中创建lib目录 /lib 2.在lib目录下添加jar包 commons-logging.jar junit-4.10.jar log4j.jar spring-beans...

weixin_33994429的博客 80

猪圈生猪目标检测数据集及训练模型:用于YOLO模型训练的高质量数据集及模型

该数据集是一个专门用于生猪检测的高质量图像数据集,采集自真实养殖场及屠宰场,包含多场景下的生猪图像,覆盖不同光照条件、拍摄角度以及部分遮挡情况。数据集包含7200张图像(训练集5040张、验证集1440张、测试集720张)和79116个标注框,类别涵盖生猪完整个体及局部特写。标注采用YOLO标准格式,兼容主流YOLO版本,数据经过严格清洗与标注质量校验,确保分布均衡性和标注一致性。通过YOLOv11s进行训练,最终预训练模型的基础上在100个epochs的mAP@.5为99.5%、mAP@.5.95为98.8%。详细可见博客https://blog.csdn.net/m0_51004308/article/details/155744563?sharetype=blogdetail&sharerId=155744563&sharerefer=PC&sharesource=m0_51004308&spm=1011.2480.3001.8118

上一篇: Bean的作用域及其自动装配
下一篇: spring不同于bean自动装配的spring注解应用——bean属性的配置
ahyo
博客等级 码龄6年 137粉丝 · 746原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值