Spring spring

Spring中文网站 > Spring Security > Spring的注解有哪些注解 Spring注解注入属性
Spring的注解有哪些注解 Spring注解注入属性
发布时间:2026/04/01 13:59:04

品牌型号:联想ThinkPad X1

系统:Windows10家庭版

软件版本:Spring 5.3.7

只有弄明白Spring注解的本质和生效原理,才能开始做实际的开发工作。这时候很多新手就犯难了,Spring的注解那么多,哪些是日常用的最多的?分别都用在什么场景呢?光是记注解名就很头大了,更不要提怎么用注解给对象注入属性、赋值参数了。下面就给大家介绍Spring的注解有哪些注解,Spring注解注入属性的相关内容。

一、Spring的注解有哪些注解

Spring的注解虽然很多,但是不需要去死记硬背,可以结合我们之前XML配置开发的时候去记忆。我们之前是在XML中通过标签的方式去定义bean,现在我们只需要使用@Component注解或者是其衍生出来的三个带有语义化的注解,就可以完成一个Bean的定义。

使用@Component及其衍生注解完成Bean定义
图1:使用@Component及其衍生注解完成Bean定义

如果我们这会希望这个Bean懒加载,我们可以顾名思义想到懒的英文“lazy",那么我们就可以在类名上加一个@Lazy注解并给这个注解配置一个属性值,例如false或者true。

配置懒加载
图2:配置懒加载

我们还可以配置这个Bean的作用域是多例还是单例,作用域,我们想到的注解就是@Scope。

配置作用域
图3:配置作用域

这些常规的了解差不多了,我们接下来就是涉及到注入问题,依赖注入的时候我们只需要记住三个,一个是@Autowired、跟@Autowired经常搭档的是@Qualifier,还有个与@Autowired功能容易混淆的就是@Resource,基本上常用的就是这些个了。

配置依赖注入
图4:配置依赖注入

二、Spring注解注入属性

我们前面在介绍Spring中常用注解的时候,讲到了依赖注入的注解@Autowired、@Resource等,那么这些具体是怎么使用的呢?

我们回忆下之前XML配置开发的时候,需要在类的成员位置创建一个私有属性,并给这个私有属性创建一个setter方法,在XML配置中通过property标签注入依赖。

setter方法注入依赖
图5:setter方法注入依赖

现在我们只需要在这个私有属性上、setter方法方法上添加一个@Autowired注解就可以了,这个注解会自动根据类型去匹配合适的Bean,如果同类型下有多个Bean,我们可以借助@Qualifier注解辅助根据name值去依赖注入。

注解方式依赖注入
图6:注解方式依赖注入

到目前为止,我们一直说的是对象的依赖注入,如果这会要求只是给属性注入一个普通的值怎么办呢?这时候就要用到@Value注解了,例如这会在代码的成员位置有一个String类型的username属性,需要给这个属性注入一个值。我们只需要在这个属性上面添加一个@Value注解,然后给这个注解后面的括号中填写一个值就可以了。

给属性赋值
图7:给属性赋值

但是如果这样写,这个代码就写死了,不够灵活,怎么办呢?我们可以考虑借助Spring的SPEL表达式获取配置文件的值,这样这个username的属性值就完全是在配置文件中修改了。

Value配合SPEL表达式
图8:Value配合SPEL表达式

以上就是Spring的注解有哪些注解,Spring注解注入属性的全部内容了。Spring的注解有很多,但是几乎不需要去死记硬背,我们只需要记住每个注解使用的场景就可以了,例如创建bean的时候,可以使用@Component及其衍生出的三个语义化注解,在依赖注入的时候我们就想到@Autowired、@Resource注解,如果此时要给一个属性注入普通的值,我们可以使用@Value注解完成赋值,如果觉得这么写不够灵活,我们可以通过@Value+SPEL表达式的方式从配置文件中动态获取值。

读者也访问过这里:
180 1563 6924