本文主要是介绍为什么要Autowired和Qualifier配合使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
@Autowired是根据类型进行自动装配的。如果当spring上下文中存在不止一个UserDao类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存在UserDao类型的bean,也会抛出BeanCreationException异常。我们可以使用@Qualifier配合@Autowired来解决这些问题。如下:
①可能存在多个UserDao实例
- @Autowired
- @Qualifier("userServiceImpl")
- public IUserService userService;
或者
- @Autowired
- public void setUserDao(@Qualifier("userDao") UserDao userDao) {
- this.userDao = userDao;
- }
这样Spring会找到id为userServiceImpl和userDao的bean进行装配。
②可能不存在UserDao实例
- @Autowired(required = false)
- public IUserService userService
这篇关于为什么要Autowired和Qualifier配合使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!