@Autowired用法
时间: 2024-02-22 15:56:13 浏览: 52
@Autowired 是 Spring 框架中的一个注解,用于自动装配 Bean 对象,可以在需要使用 Bean 对象的地方,直接将 Bean 对象注入到对应的变量中,避免手动获取 Bean 对象的过程,提高开发效率。
@Autowired 注解可以用在类、属性、方法和构造函数上,其中常见的用法有以下几种:
1. 注入属性:在类的属性上使用 @Autowired 注解,Spring 会自动将对应的 Bean 对象注入到属性中,例如:
```
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
// ...
}
```
2. 注入构造函数:在类的构造函数上使用 @Autowired 注解,Spring 会自动调用对应的构造函数,并且将需要的 Bean 对象注入到构造函数中,例如:
```
@Service
public class UserServiceImpl implements UserService {
private UserDao userDao;
@Autowired
public UserServiceImpl(UserDao userDao) {
this.userDao = userDao;
}
// ...
}
```
3. 注入方法:在类的方法上使用 @Autowired 注解,Spring 会自动调用对应的方法,并且将需要的 Bean 对象注入到方法中,例如:
```
@Service
public class UserServiceImpl implements UserService {
private UserDao userDao;
@Autowired
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
// ...
}
```
需要注意的是,如果存在多个符合条件的 Bean 对象,可以使用 @Qualifier 注解指定具体的 Bean 对象,或者使用 @Primary 注解指定默认的 Bean 对象。另外,@Autowired 注解可以和 @Component、@Service、@Repository 等注解一起使用,标识对应的类为 Spring 的 Bean 对象。
阅读全文