@Autowired装配问题的完整代码
接口
public interface IUserDao {
}UserDao类
@Repository
public class UserDao implements IUserDao{
public UserDao(){
System.out.println("正在创建UserDao:" + this);
}
}UserOracleDao类
@Repository
public class UserOracleDao implements IUserDao {
public UserOracleDao(){
System.out.println("正在创建UserOracleDao:" + this);
}
}UserService类
@Service
public class UserService {
@Autowired
private IUserDao userDao ;
public IUserDao getUdao() {
return userDao;
}
}SpringApplication类
public class SpringApplication {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
UserService userService = context.getBean("userService", UserService.class);
System.out.println(userService.getUdao());
}
}我这个可以正常运行 和视频中讲的不太一样 这个是什么原因
51
收起
正在回答
4回答
同学你好,你的理解是正确的。@AutoWired注解匹配规则如下:

所以变量名为userDao是不会报错的。
祝学习愉快~
java工程师2020版
- 参与学习 人
- 提交作业 9410 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程



你这get方法名错了。。。。。。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星