@Autowired装配问题的完整代码
接口
1 2 | public interface IUserDao { } |
UserDao类
1 2 3 4 5 6 | @Repository public class UserDao implements IUserDao{ public UserDao(){ System.out.println( "正在创建UserDao:" + this ); } } |
UserOracleDao类
1 2 3 4 5 6 | @Repository public class UserOracleDao implements IUserDao { public UserOracleDao(){ System.out.println( "正在创建UserOracleDao:" + this ); } } |
UserService类
1 2 3 4 5 6 7 8 9 10 11 | @Service public class UserService { @Autowired private IUserDao userDao ; public IUserDao getUdao() { return userDao; } } |
SpringApplication类
1 2 3 4 5 6 7 | 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版
- 参与学习 人
- 提交作业 9404 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧