关于@Repository的用法

关于@Repository的用法

http://img1.sycdn.imooc.com//climg/5d7f4b7009ff5e4312620675.jpg

问题一:如图中,这里的@Autowired不是应该装配接口的实现类的吗?但是DepartmentDao是一个接口呀,而不是一个实现类,为什么可以这样操作呢?

问题二:如果DepartmentDao接口上面不注解@Repository("departmentDao"),那@Autowired是不是不起作用了呢?是因为在@Repository("departmentDao")把接口放进了Ioc中后面的@Autowired才能进行装配,是这样吗?

问题三:那在DepartmentServiceImpl中配置@Service("departmentService")有什么用呢,我的理解是把一个类或者方法放入到Ioc容器中是要为后面可以提出来装配做准备,那这个@Service("departmentService")后面也会用到吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好!

  1. 这里spring的底层注入的就是实现类,很多操作底层都帮我们完成了

  2. 如果不写注解,就无法创建bean,也就没有办法使用了

  3. service的bean,在Controller中会用到哦。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • KelvinChung 提问者 #1
    为什么Spring底层注入的就是实现类呀?在service层不是也写了接口跟接口的实现类吗?在service层中也是把接口的实现类放入Ioc容器的
    2019-09-16 17:17:19
  • 好帮手慕柯南 回复 提问者 KelvinChung #2
    同学接口是不能够实例化的,所以实例化的都是其实现类,底层的源码,不是一下子就可以全部理解和说明白的~同学要先熟练使用,然后在慢慢研究。祝学习愉快~
    2019-09-16 18:17:44
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师