@Autowired用法
时间: 2024-02-24 12:02:51 浏览: 32
@Autowired 是一个注解,用于自动装配 Spring 容器中的 bean 对象。它可以用于字段、setter 方法或者构造函数上。
使用 @Autowired 注解时,可以指定一个可选参数 required,用于指定所注入的 bean 是否是必须的。如果 required 参数的值为 true(默认值为 true),但是在 Spring 容器中找不到对应的 bean,会抛出 NoSuchBeanDefinitionException 异常。
示例:
假设有一个名为 "userService" 的 UserService 类,我们想要在另一个类中注入该类的实例。
1. 使用默认的自动装配方式(按类型进行匹配):
```
public class UserController {
@Autowired
private UserService userService;
}
```
2. 指定名称进行匹配:
```
public class UserController {
@Autowired
@Qualifier("userService")
private UserService myUserService;
}
```
3. 构造函数注入:
```
public class UserController {
private UserService userService;
@Autowired
public UserController(UserService userService) {
this.userService = userService;
}
}
```
注意:@Autowired 注解是 Spring 中的注解,可以与 @Qualifier 注解一起使用,用于指定所注入的 bean 的名称。在多个 bean 类型相同时,可以使用 @Qualifier 注解进行区分。另外,@Autowired 注解也可以用于集合类型的注入,将容器中的所有符合条件的 bean 注入到集合中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)