Spring——注解实现自动装配

使用注解须知:

  1. 导入约束:context约束

  2. 配置注解的支持:context:annotation-config

XML 复制代码
<?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"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
		https://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context
		https://www.springframework.org/schema/context/spring-context.xsd">

	<context:annotation-config/>

</beans>

@Autowired

直接在属性上使用即可,也可以在set方式上使用

使用Autowired时,可以不用编写set方法,前提是自动装配的属性在ioc(Spring)容器中存在,且符合名字byname!

测试代码:

java 复制代码
public class People {

    // 如果显示定义了Autowired的required属性为false,说明这个对象可以为null,否则不允许为空
    @Autowired(required = false)
    private Cat cat;
    @Autowired
    private Dog dog;
    private String name;
}

如果@Autowired自动装配的环境比较复杂,自动装配无法通过一个注解【@Autowired】完成的时候,我们可以使用@Qualifier(value="xxx")去配合@Autowired的使用,指定一个唯一的bean对象注入。

java 复制代码
public class People {

    // 如果显示定义了Autowired的required属性为false,说明这个对象可以为null,否则不允许为空
    @Autowired(required = false)
    @Qualifier(value = "cat111")
    private Cat cat;
    
    @Autowired
    @Qualifier(value = "dog222")
    private Dog dog;
    private String name;
相关推荐
new_daimond4 分钟前
二级缓存在实际项目中的应用
java
一只乔哇噻11 分钟前
java后端工程师进修ing(研一版 || day41)
java·开发语言·学习·算法
愿时间能学会宽恕12 分钟前
SpringBoot后端开发常用工具详细介绍——SpringSecurity认证用户保证安全
spring boot·后端·安全
CodeSheep27 分钟前
稚晖君又开始摇人了,有点猛啊!
前端·后端·程序员
User_芊芊君子29 分钟前
【Java】设计模式——单例、工厂、代理模式
java·设计模式·代理模式
小宁爱Python31 分钟前
Django 从环境搭建到第一个项目
后端·python·django
2301_8035545238 分钟前
正向代理,反向代理,负载均衡还有nginx
java·nginx·负载均衡
要开心吖ZSH39 分钟前
软件设计师备考-(十六)数据结构及算法应用(重要)
java·数据结构·算法·软考·软件设计师
uzong40 分钟前
深入浅出:画好技术图
后端·架构
向上的车轮1 小时前
基于Java Spring Boot的云原生TodoList Demo 项目,验证云原生核心特性
java·spring boot·云原生