动态代理 不是要知道实现类和接口才能创建出代理对象吗?
引用Autowired注解注入service时都是写的接口,spring是怎么找到接口的实现类的?
是扫包时记录了依赖关系还是什么别的方法?
在启动spring IoC时,容器自动装载了一个AutowiredAnnotationBeanPostProcessor后置处理器,当容器扫描到@Autowied、@Resource或@Inject时,就会在IoC容器自动查找需要的bean,并装配给该对象的属性。
另外关于Autowied的原理还有很多,我说的也就是它的大概原理,详细的你可以去谷歌哈。
扫包一般写到接口那层包,因为实现类的包是再接口包里,扫描机制是扫描当前包以及下面的所有子包