spring中setter注入注解
时间: 2023-09-14 18:14:39 浏览: 167
在Spring中,使用注解进行setter注入的方式,可以通过以下注解来实现:
1. @Autowired:用于自动装配Bean,可以用在setter方法、属性和构造函数上。
2. @Qualifier:用于指定Bean的名称,当有多个Bean时,可以指定其中一个Bean。
3. @Resource:用于自动装配Bean,可以用在setter方法、属性和构造函数上。与@Autowired不同的是,@Resource可以指定Bean的名称。
4. @Value:用于注入Bean的属性值,可以用在setter方法和属性上。
示例代码:
```
public class UserServiceImpl implements UserService {
private UserDao userDao;
@Autowired
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
public UserDao getUserDao() {
return userDao;
}
}
```
在上面的代码中,使用@Autowired注解标注了setUserDao方法,Spring会自动将UserDao的实例注入到userDao属性中。
另外,还可以通过使用@Resource注解来指定Bean的名称:
```
public class UserServiceImpl implements UserService {
private UserDao userDao;
@Resource(name = "userDaoImpl")
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
public UserDao getUserDao() {
return userDao;
}
}
```
在上面的代码中,@Resource注解指定了Bean的名称为"userDaoImpl",Spring会自动将该名称对应的UserDao实例注入到userDao属性中。
阅读全文